<%= form_for [:admin, @group.organisation, @group] do |form| %>
  <%= form.errors %>

  <%= form.text_field :name %>

  <%= form.fields_for :group_memberships do |membership_fields| %>
    <fieldset>
      <legend><%= membership_fields.object.new_record? ? "New member" : "Member" %></legend>
      <%= membership_fields.select :person_id, options_from_collection_for_select(Person.all, 'id', 'name', membership_fields.object.person_id), { include_blank: true }, class: 'chzn-select', data: { placeholder: "Choose person" } %>
      <% if membership_fields.object.persisted? %>
        <%= membership_fields.check_box :_destroy, label_text: "Delete" %>
      <% end %>
    </fieldset>
  <% end %>

  <%= form.save_or_cancel cancel: admin_organisation_path(@group.organisation, anchor: "groups") %>
<% end %>

<%= form_for [:admin, @group.organisation, @group] do |form| %>
  <%= form.errors %>

  <%= form.text_field :name, placeholder: "Name of board, committee, etc. e.g. Defence Council" %>

  <fieldset>
    <legend>Members</legend>
    <%= form.fields_for :group_memberships do |membership_fields| %>
      <fieldset>
        <%= membership_fields.select :person_id, options_from_collection_for_select(Person.all, 'id', 'name', membership_fields.object.person_id), { include_blank: true }, class: 'chzn-select', data: { placeholder: "Choose person" } %>
        <% if membership_fields.object.persisted? %>
          <%= membership_fields.check_box :_destroy, label_text: "Delete" %>
        <% end %>
      </fieldset>
    <% end %>
  </fieldset>

  <%= form.save_or_cancel cancel: admin_organisation_path(@group.organisation, anchor: "groups") %>
<% end %>

Tweak structure/layout of groups form.
Tweak structure/layout of groups form.
