Posted about 8 years ago. Visible to the public.

How to change the order of nested forms being rendered (especially blank forms)

Generally for nested forms, a blank form is placed below all other existing object forms. If you would like to change the position of the blank form(s) you can reorder the object's one-to-many association. For example you can put the blank form on top with the following snippet:

actors = movie.actors actors.unshift(actors.pop(1)) # won't work with Rails 4+

Because build_for_form creates new objects and appends them to the one-to-many association collection object you only have to reorder the collection objects.

Sorting with Rails 3+

= form.fields_for :children, @parent.children.sort_by(&:name) do |fieldsform| …

Once an application no longer requires constant development, it needs periodic maintenance for stable and secure operation. makandra offers monthly maintenance contracts that let you focus on your business while we make sure the lights stay on.

Owner of this card:

Martin Straub
Last edit:
over 3 years ago
by Martin Straub
About this deck:
We are makandra and do test-driven, agile Ruby on Rails software development.
License for source code
Posted by Martin Straub to makandra dev
This website uses cookies to improve usability and analyze traffic.
Accept or learn more