0

我是 Ruby on Rails 的新手。

我阅读了一些教程并知道如何创建基本关系。但我不能申请我的案子。

我有 2 个模型看起来像

class User < ActiveRecord::Base
    attr_accessible :email, :created_user, :updated_user
    has_many :reports
end

class Report < ActiveRecord::Base
    attr_accessible :content, :user_id, :title, :updated_user 
    belongs_to :user
end

现在我可以写:

report.user

但我想写更多的东西

report.updated_user // instead of User.find(report[:updated_user]) 
user.created_user // instead of User.find(user[:created_user])
user.updated_user // instead of User.find(user[:updated_user])

我能做些什么?

4

2 回答 2

1

将您的报告模型更改为:

class Report < ActiveRecord::Base
    attr_accessible :content, :user_id, :title, :updated_user 
    belongs_to :user, :class_name => "User", :foreign_key => 'user_id'
    belongs_to :updated_user, :class_name => "User", :foreign_key => 'updated_user'
end
于 2013-05-31T07:59:18.453 回答
0

试试这样

@report=report.find(id)
@report.user.updated_user
于 2013-05-31T08:05:09.717 回答