sar*_*ath 4 ruby-on-rails associations
嗨,我是rails的新手,并开始使用一个简单的应用程序,它有许多"任务",每个都附有一个"标签".所以这种关系就像 - 许多'任务'都有一个/同一'标签'.我如何在我的模型中提出这个问题.我尝试使用'task'has_one'tag'和'tag'edela_to''task'规则,但它仅适用于带有该标签的第一个'任务',以及带有相同'tag'的其他'任务'它不会起作用.请建议我正确的方法.谢谢 :)
class Task < ActiveRecord::Base
has_many :logs
has_one :tag , :foreign_key => "id"
end
class Tag < ActiveRecord::Base
belongs_to :task
end
Run Code Online (Sandbox Code Playgroud)
小智 10
在我看来,你已经转过身来了 - 我见过的Rails的每个新手都在他们的第一个项目中做到了这一点.
你想要的是什么
class Task < ActiveRecord::Base
has_many :logs
belongs_to :tag
end
class Tag < ActiveRecord::Base
has_many :tasks
end
Run Code Online (Sandbox Code Playgroud)
以这种方式考虑 - 如果您单击标记,您将期望具有该标记的所有任务的列表.因此标签有很多任务,每个任务都属于一个标签.这与您描述项目的方式相符.Has_one旨在用于一对一关系,其中每个任务都有自己的唯一标记.
| 归档时间: |
|
| 查看次数: |
4792 次 |
| 最近记录: |