如何向模型添加一个连接?
how to add one more connection to a model?
比如我有2个模型:
ticket.rb
belongs_to :user
user.rb
has_many :tickets, dependent: :destroy
我在table张票中
t.integer "user_id"
一切正常。但是,如果我想添加一个新字段 assignee_id,并且该字段应该是来自相同 table 用户的用户怎么办?
我可以只添加一个字段 assigne_id 并用我需要的 user_id 填充它,但我想使用像 @ticket.assignee.name 这样的结构,就像我在 @ticket.user.name 中使用的那样。你能帮帮我吗?
你可以,Rails 允许你将一堆参数传递给 belongs_to
。在您的情况下,您需要指定关联的 foreign key
和 class name
。
这就是您加入 assignee
到 user
table
的方式
#ticket.rb
belongs_to :assignee, foreign_key: "assignee_id", class_name: "User"
比如我有2个模型:
ticket.rb
belongs_to :user
user.rb
has_many :tickets, dependent: :destroy
我在table张票中
t.integer "user_id"
一切正常。但是,如果我想添加一个新字段 assignee_id,并且该字段应该是来自相同 table 用户的用户怎么办? 我可以只添加一个字段 assigne_id 并用我需要的 user_id 填充它,但我想使用像 @ticket.assignee.name 这样的结构,就像我在 @ticket.user.name 中使用的那样。你能帮帮我吗?
你可以,Rails 允许你将一堆参数传递给 belongs_to
。在您的情况下,您需要指定关联的 foreign key
和 class name
。
这就是您加入 assignee
到 user
table
#ticket.rb
belongs_to :assignee, foreign_key: "assignee_id", class_name: "User"