【发布时间】:2015-01-24 16:05:21
【问题描述】:
我有一个关于 ActiveRecord 关联的问题,我试图有一个 User 模型,其中每个用户可以有许多 Products(然后属于该特定用户)。但是,在产品展示之前,它需要一个有效的权限,所以我想在上述构造中添加第三个模型,Permission。
我制定了以下句子以使思考过程更容易:
一个User has_many Products,每一个has_one Permission。
ActiveRecord 关联现在看起来像这样:
class User < ActiveRecord::Base
has_many :products
has_many :permissions
end
class Product < ActiveRecord::Base
belongs_to :user
has_one :permission
end
class Permission < ActiveRecord::Base
belongs_to :product
belongs_to :user
end
我的问题:
- 这是正确的方法吗(真的有效吗?)
- 如果我从不需要在我的应用中列出用户的所有权限,是否有必要声明
Userhas_many 权限和Permissionbelongs_to 用户?
想请大家确认一下我的想法是对还是错,或者有没有更好的方法来解决我的问题,希望这个问题对其他人也有用,谢谢!
【问题讨论】:
标签: ruby-on-rails activerecord rails-activerecord