6

これがカテゴリーモデルです。カテゴリは別のカテゴリに属する​​ことができます。

class Category < ActiveRecord::Base
  attr_accessible :title, :parent_id

  has_and_belongs_to_many :products, :join_table => :products_categories

  belongs_to :parent, :foreign_key => "parent_id", :class_name => "Category"
  has_many :categories, :foreign_key => "parent_id", :class_name => "Category"
end

これは製品モデルです:

class Product < ActiveRecord::Base
  attr_accessible :comment, location_id, :category_ids
  has_and_belongs_to_many :categories, :join_table => :products_categories
  belongs_to :location
end

製品のアクティブ管理フォームで、parent_idに基づいてチェックボックスを階層的に並べ替えます。

  • カテゴリ1[]
    • カテゴリ2[]
    • カテゴリ3[]
  • カテゴリ6[]
    • カテゴリ4[]
  • カテゴリ5[]
  • カテゴリー7[]

以下は私がフォームで持っている限りです:

ActiveAdmin.register Product do
    form do |f|
      f.inputs "Product" do
      f.input :comment
      f.input :categories, :as => :check_boxes
      f.input :location
    end
    f.buttons
  end
end

現在、フォームはチェックボックスを取得してデータを正しく保存しますが、グループ化をどこから始めればよいかわかりません。ドキュメントを調べましたが、明らかなものは何も見つかりませんでした。

4

1 に答える 1