如何为模型添加一个连接?

时间:2015-04-19 16:24:49

标签: ruby-on-rails activerecord model assign

例如,我有2个模型:

ticket.rb

belongs_to :user

user.rb

has_many :tickets, dependent: :destroy

在表格中我有

t.integer  "user_id"

一切正常。但是如果我想添加一个新的字段assignee_id,那应该是来自同一个表用户的用户呢? 我可以只添加一个字段assigne_id并用我需要的user_id填充它,但我想使用像@ ticket.assignee.name这样的结构,就像我用@ ticket.user.name一样。你能帮我吗?

1 个答案:

答案 0 :(得分:3)

你可以这样做,Rails允许你将一堆参数传递给belongs_to。在您的情况下,您需要指定关联的foreign keyclass name


您可以将assignee加入user表格

#ticket.rb
belongs_to :assignee, foreign_key: "assignee_id", class_name: "User"

来源:edgeguides.rubyonrails.org

来源:api.rubyonrails.org