doc*_*nge 178 ruby-on-rails has-many
在我的用户模型中,我可以:
has_many :tasks
Run Code Online (Sandbox Code Playgroud)
在我的任务模型中:
belongs_to :user
Run Code Online (Sandbox Code Playgroud)
然后,假设外键'user_id'存储在tasks表中,我可以使用:
@user.tasks
Run Code Online (Sandbox Code Playgroud)
我的问题是,如何声明has_many关系,以便我可以将用户的任务称为:
@user.jobs
Run Code Online (Sandbox Code Playgroud)
... 要么 ...
@user.foobars
Run Code Online (Sandbox Code Playgroud)
谢谢你的一堆.
Sam*_*ron 345
试一试:
has_many :jobs, foreign_key: "user_id", class_name: "Task"
Run Code Online (Sandbox Code Playgroud)
注意,这:as用于多态关联.
Pwn*_*rar 46
alias_attribute如果您仍希望能够将它们作为任务引用,也可以使用它们:
class User < ActiveRecord::Base
alias_attribute :jobs, :tasks
has_many :tasks
end
Run Code Online (Sandbox Code Playgroud)
如果你使用 has_many through,并且想要别名:
has_many :alias_name, through: model_name, source: initial_name
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
91316 次 |
| 最近记录: |