A user can click on a featured_inspiration
to prepopulate a new _form with the data from that featured_inspiration
. The data being :text
and/or :image
. This is so the user can save a preexisting Inspiration
to his own list of Inspirations
.
:text
correctly prepopulates the form, but for some reason :image
remains nil
.
controller
def new
existing_inspiration = Inspiration.find_by_id params[:inspiration_id]
if existing_inspiration
@inspiration = existing_inspiration.dup
### Attempt at Making It Works. Had No Effect. ###
@inspiration.image_file_name = existing_inspiration.dup.image_file_name
@inspiration.image_content_type = existing_inspiration.dup.image_content_type #Attempt at Making It Works. Had No Effect.
@inspiration.image_file_size = existing_inspiration.dup.image_file_size
@inspiration.image_updated_at = existing_inspiration.dup.image_updated_at
##############
else
@inspiration = current_user.inspirations.build
end
end
Console
[41] pry(main)> Inspiration.last
Inspiration Load (1.7ms) SELECT "inspirations".* FROM "inspirations" ORDER BY "inspirations"."id" DESC LIMIT 1
=> #<Inspiration:0x007fa6d15ec9a8
id: 13,
conceal: false,
user_id: 8,
created_at: Fri, 26 Feb 2016 15:29:52 EST -05:00,
updated_at: Fri, 26 Feb 2016 15:29:52 EST -05:00,
likes: nil,
name: "",
image_file_name: nil, #SHOULD BE: "inspiring-quotes-about-life-6gbwrvxd.jpg",
image_content_type: nil, #SHOULD BE: "image/jpeg",
image_file_size: nil, #SHOULD BE: 83348
image_updated_at: nil> #SHOULD BE: Wed, 24 Feb 2016 15:25:44 EST -05:00>
_form
<%= simple_form_for(@inspiration, html: { data: { modal: true } }) do |f| %>
<%= f.file_field :image %>
<%= f.text_area :text %>
<% end %>
Question that got duplicating text to work.
UPDATE
suggested_inspirations
<% @inspirations.each do |inspiration| %>
<%= link_to inspiration_path(inspiration) do %>
<div class="box panel panel-default" style="width: 175px;">
<% if inspiration.image.present? %>
<div id="box">
<%= link_to new_inspiration_path(inspiration_id: inspiration.id), data: { modal: true } do %>
<div class="inspiration-image-button"><span class="glyphicon glyphicon-plus"></span></div>
<% end %>
<%= link_to image_tag(inspiration.image.url(:medium)), inspiration %> #This is how image is pulled
</div>
<% end %>
<% if inspiration.name.present? %>
<div class="panel-body">
<%= link_to new_inspiration_path(inspiration_id: inspiration.id), data: { modal: true } do %>
<div class="inspiration-button"><span class="glyphicon glyphicon-plus"></span></div>
<% end %>
<%= inspiration.name %>
</div>
<% end %>
</div>
<% end %>
<% end %>