I have a _form which renders another form with simple_fields_for. Everything works fine except I can’t figure out the symbol that holds the different URLs, I particularly want the thumb URL.
For example, picture.image_uploader_url — but I don’t have the actual object, just the :pictures symbol which is being iterated on. So far :image_uploader_url.to_s doesn’t give anything useful and I realized this is because that will always just give the symbol name.
Super form:
<%= simple_form_for(@project) do |f| %>
[...]
<%= f.simple_fields_for :pictures do |builder| %>
<%= render "pictures/form", f: builder %>
[...]
Sub form (pictures/_form):
<% unless [:image_uploader_url].nil? or [:image_uploader_url].empty? %>
<%= image_tag(:thumb_url.to_s) %>
<% end %>
<%= f.input :name %>
<%= f.input :description %>
<%= f.input :image_uploader, as: :file %>
<%= f.hidden_field :image_uploader_cache %>
How do I know in general what symbols I will have access to and how do I use them? maybe I dont have them?
EDIT: I don’t have ‘picture’ to work with, only ‘:pictures’ which I’m struggling to find what all I can get from this (i.e. picture has an image_uploader which I can get image_uploader_url(:thumb) but I can’t do this with symbols, nor do I know how to get the picture that is the current iteration).
As far as I could figure out there is no way to get to the individual pictures that are related to the :pictures symbol. I ended up just scrapping the symbol and passing local variables (I was trying to avoid having the controller from making more information directly available).
I still don’t have a satisfactory answer but this is the best I could come up with.