2012-12-05 96 views
0

我有两个模型:UserDog。我希望能够在一个Datagrid报告中显示它们。当使用column()方法时,我用什么语法来引用用户模型的特定属性?现在我只显示User对象,但我想显示User模型的:name,:gender:age属性的各个列。在datagrid列中显示关联模型的属性

class User < ActiveRecord::Base 
    attr_accessible :email, :age, :gender, :name 
    has_many :dogs 

class Dog < ActiveRecord::Base 
    attr_accessible :name, :age 
    belongs_to :user 

class DogReport 
    include Datagrid 

    # 
    # Scope 
    # 

    scope do 
    Dog.includes(:user) 
    end 

    # 
    # Filters 
    # 

    filter(:dog_id, :integer) 

    # 
    # Columns 
    # 

    column(:id) 
    column(:name) 
    column(:age) 
    column(:user) 
end 

回答

0
column(:user, :header => "user.name") do 
    self.user.name 
end 
+0

现在我需要弄清楚如何过滤掉根据不同的用户属性。 :) – wuliwong

+0

'filter(:user_name,:string,:header =>“User.name”)do | value | (:user => {:name => value}) end' – wuliwong

+0

以上是你如何过滤。我还在github wiki中编辑了一个错字,所以现在基本上所有这些信息都在那里。 :) – wuliwong

相关问题