ActiveAdmin::FormBuilder を使用したいのは、ネストされたモデルを生成できる方法が好きだからです (ほとんどの場合has_many
、ネストされたオブジェクトを簡単に作成および破棄するためのインライン JavaScript で素敵なボタンを生成するメソッド)。
ただし、デフォルトの外観ではスペースがかかりすぎるため、フォーム自体を編集したいと考えています。
フォーム デザインの出力をカスタマイズする良い方法があるかどうかは誰にもわかりませんが、ネストされたオブジェクトのネストされたメソッドを保持しますか?
コメント付きのコード例を次に示します。
<%= semantic_form_for @item, builder: ActiveAdmin::FormBuilder do |f| %>
<% f.inputs "Item Details" do %>
<% f.input :keywords %>
<% f.input :description %>
<% end %>
<% f.inputs "Features", :id => "item_features" do %>
<% f.has_many :features, :header => "" do |feature| %>
<!-- all these fields are generated in separate rows, I want to fit them all to one row - so need to add some classes-->
<% feature.input :name, :label => "Feature Name" %>
<% feature.input :value, :label => "Feature Value" %>
<% feature.input :_destroy, :as=>:boolean, :required => false, :label=>'Remove Feature' %>
<% end %>
<% end %>
<% f.inputs "Options", :id => "item_options" do %>
<% f.has_many :options, :header => "" do |option| %>
<!-- same thing here -->
<% option.input :name, :label => "Option Name" %>
<% option.input :_destroy, :as=>:boolean, :required => false, :label=>'Remove Option' %>
<% end %>
<% end %>
<% f.actions %> <!-- here I want to add some classes to each button -->
<% end %>