在我的项目中,我使用的是RailsAdmin,有两个型号,Product& Product_rate。
has_many :product_rates
belongs_to :product
rails_admin.rb中的代码是
config.model Product do
....
list do
field :product_rates
end
我想在“field:product_rates”中显示product_rates的排名。 product_rate模型如下所示。
class ProductRate < ActiveRecord::Base
belongs_to :product
attr_accessible :rank, :product_id
end
最佳结果可以显示等级和。 例如:产品XX的排名为0,1,0,2。我想在product_rates中显示等级和,这将是3。
感谢任何帮助。感谢
答案 0 :(得分:0)
如何向total_rank
模型添加Product
方法并使用该方法。
class Product < ActiveRecord::Base
has_many :product_rates
def total_rank
product_rates.map(&:rank).inject(:+)
end
end
然后在initializers/rails_admin.rb
:
config.model Product do
....
list do
field :total_rank do
label "Rating"
end
end
也许这并不能完全回答你的问题。 According to the docs也许你想尝试这样的事情......
list do
field :product_rating do
formatted_value do # used in form views
value.map(&:rank).inject(:+) # I'm assuming the value is an array of products
end
end
end