无法在Rails Active Admin Index页面中显示多个属性(嵌套项)

问题描述 投票:0回答:1

我有两个型号产品和product_category产品包含或映射多个产品类别,反之亦然。它通过多对多关系维护,其中有另一个名为products_in_category的模型。我使用Active Admin进行后端和CRUD目的,现在我需要在Active Admin的Product index页面中显示多个product_categories。任何建议或帮助对我来说都很棒。

#app/models/product.rb
class Product < ApplicationRecord
    has_many :products_in_categories
    has_many :product_categories, through: :products_in_categories, dependent: :destroy
    accepts_nested_attributes_for :product_categories   
end

#app/models/product_category.rb
class ProductCategory < ApplicationRecord
    has_many :products_in_categories
    has_many :products, through: :products_in_categories, dependent: :destroy
    accepts_nested_attributes_for :products
    accepts_nested_attributes_for :products_in_categories
end

#app/models/products_in_category.rb
class ProductsInCategory < ApplicationRecord
    belongs_to :product_category
    belongs_to :product
end
ruby-on-rails ruby-on-rails-5 activeadmin ruby-on-rails-5.1
1个回答
1
投票

您可以在列中列出类别名称(只需将name与实际属性一起更改):

index do
  # other columns goes here
  column('Categories') { |p| p. product_categories.pluck(:name).join(', ') }
end
© www.soinside.com 2019 - 2024. All rights reserved.