2012-07-23 39 views
0

在我的項目中,我使用的是RailsAdmin,並且有兩個型號,產品& Product_rate。當我使用gem'rails_admin'時如何更改字段的答案?

has_many :product_rates 
belongs_to :product 

在rails_admin.rb的代碼是

config.model Product do 
    .... 
    list do 
    field :product_rates 
    end 

我想展示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

如何將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 
+0

哦,老兄。是對的嗎?讓我試試這個。謝謝! – JeskTop 2012-07-29 03:23:55

相關問題