2016-10-05 4 views
0

で表示親の名前をだから、基本的には、私は現在、カテゴリと呼ばれる自己参照モデルは、ここでActiveAdmin:列

class Category < ApplicationRecord 
    belongs_to :category 
    has_many :children, -> { order(:name) }, :dependent => :destroy, :class_name => 'Category' 

    validates :name, presence: true 
end 

の下に表示されていることですが私は何カテゴリー

ActiveAdmin.register Category do 
    permit_params :name, :category_id 

    index do 
     column :name 
     column(:category_id) do |category| 
      category.category_id? ? category.category_id : 'Parent' 
     end 
     actions 
    end 
end 

ためActiveAdminクラスですこれは、カテゴリがサブカテゴリであるかどうかを確認することです。親カテゴリを表示する場合は「親」と表示されます。上記のように親を表示するためのコードがあります。

私は、コードブロックを使用して、ちょうど次を使用しない場合:

column :category_id 

それは親の名前が表示されます。しかし、ここで私は、コードブロック内

Category Table displaying numeric for parent category

をcategory.category_idを使用するときに私が見るものである多分私は何かが欠けていますが、任意のヘルプは大歓迎です。

答えて

1

私はこれを理解しましたが、私が見つけたものを共有したいと思っていました。自己参照列を使用する場合は、model.modelを使用して親子関係を表示できます。

ActiveAdmin.register Category do 
    permit_params :name, :category_id 

    index do 
     column :name 
     column "Parent Category", (:category_id) do |category| 
      category.category_id? ? category.category : 'Parent' 
     end 
     actions 
    end 
end 

あなたが見ることができるように、コードブロックにcategory.categoryを使用すると、親が表示されることを許可:以下は、私はこの仕事をするために行われた変更でした。これは将来誰かを助けてくれることを願っています。

関連する問題