I agree I can clean up the build but the problem I am having is in the
form, not the models...
I need to structure the nested form and I can't seem to figure out the
rails syntax...
Just experimenting, and currently, this is the closest I have gotten to
what I am trying to do...
<% @dd_detail.dd_detail_categories.each do |category| %>
<div class="lunch_order_list_class"><%= category.title.titleize %></div>
<%= f.fields_for :dd_detail_items do |item| %>
<%= item.label :title %>
<%= item.check_box :item_check %>
<%= item.text_field :item_value %>
<%= item.text_area :note %>
<br/>
<%= item.fields_for :dd_detail_subitems do |subitem| %>
<%= subitem.label :title %>
<%= subitem.check_box :item_check %>
<%= subitem.text_field :item_value %>
<%= subitem.text_area :note %>
<br/>
<% end %>
<% end %>
<%= f.fields_for :dd_detail_subcategories do |subcategory| %>
<%= subcategory.label :title %><br/>
<%= subcategory.fields_for :dd_detail_items do |item| %>
<%= item.label :title %>
<%= item.check_box :item_check %>
<%= item.text_field :item_value %>
<%= item.text_area :note %>
<br/>
<%= item.fields_for :dd_detail_subitems do |subitem| %>
<%= subitem.label :title %>
<%= subitem.check_box :item_check %>
<%= subitem.text_field :item_value %>
<%= subitem.text_area :note %>
<br/>
<% end %>
<% end %>
<% end %>
<% end %>
On Thursday, September 26, 2019 at 4:25:03 PM UTC-4, Ariel Juodziukynas
wrote:
>
> I'm not sure I understand what's the problem, where exactly do you have
> doubts?
>
> I'd suggest you first refactor that super ugly nested loops and ifs:
> - remove the unnecesarry if's
> DdCategory.all.each do |category|
> # If the Category is active, build it
> if category.is_active?
>
> can't you handle that is_active? with a scope?
>
> - the blocks for category.dd_items and subcategory.dd_items looks almost
> the same, I think you can reuse some code there
>
> - move complex logic to other methods to clean that up, like:
>
> item.dd_subitems.each do |subitem|
>
> newitem.dd_detail_subitems.create!(dd_detail_item_id: newitem.id, title:
> subitem.title, has_check: subitem.has_check, has_value: subitem.has_value,
> has_note: subitem.has_note, item_check: subitem.item_check, item_value:
> subitem.item_value, item_note: subitem.item_note)
> end
>
> could be a method on newitem like "add_subitem_from(subitem)" that does
> that create but you'll have less clutter to simplify your logic to
> understand it better
>
>
> El jue., 26 sept. 2019 a las 16:01, John Sanderbeck (<[email protected]
> <javascript:>>) escribió:
>
>>
>> Another thing to note is I am also only doing an Edit of the data as the
>>> records already have been created and are not allowed to be destroyed.
>>>
>>
>> John
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Ruby on Rails: Talk" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected] <javascript:>.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/rubyonrails-talk/56b5ef26-e7ed-45a8-b346-b39c45edca0f%40googlegroups.com
>>
>> <https://groups.google.com/d/msgid/rubyonrails-talk/56b5ef26-e7ed-45a8-b346-b39c45edca0f%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>
--
You received this message because you are subscribed to the Google Groups "Ruby
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/rubyonrails-talk/424ef245-ea1a-410e-89ca-797bec4712f2%40googlegroups.com.