2016-10-05 2 views
0
그래서 기본

내가 현재 종류 내가 무엇ActiveAdmin을 : 열에 표시 부모 이름이

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을 클래스라는 범주가 여기에

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

    validates :name, presence: true 
end 

아래에 보여 자기 참조 모델이다 가지고 있다는 것입니다 하려는 경우 카테고리가 하위 카테고리인지 확인하고 부모 이름을 표시하는 경우 '부모'를 표시하지 않는지 확인하는 것입니다. 위에서 본 것처럼 부모 작업을 표시하는 코드가 있습니다.

내가 코드 블록을 사용하고 바로 다음 사용하지 않는 경우 :

column :category_id 

그런 다음 그것은 부모의 이름을 표시합니다. 그러나 여기에 내가

Category Table displaying numeric for parent category

가 어쩌면 내가 모르는 뭔가가하고있는 코드 블록 내부에 category.category_id를 사용하지만 어떤 도움이 크게 감사 때 내가 볼 것입니다.

답변

1

나는 이것을 알아 냈지만 발견 한 것을 공유하고 싶었습니다. 자체 참조 열을 사용할 때 model.model을 사용하여 부모 자식 관계를 표시 할 수 있습니다. 표시되는 코드 블록에서 부모를 category.category 허용하여, 당신이 볼 수 있듯이

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 

: 변경했다 아래 나는이 일을하게했다. 희망이 사람을 미래에 도움이됩니다.