【发布时间】:2010-05-23 01:13:13
【问题描述】:
在构建允许用户登录和创建数据的 Rails 应用程序时,是否最好在每个模型上设置 belongs_to :user 关联?例如,假设用户可以创建收藏夹、颜色和标签。
假设收藏夹has_many :tags 和颜色也has_many :tags。假设用户是唯一有权编辑这些标签的人,对belong_to :user 的标签仍然很重要吗?
还有一个类似的问题:在更新 FavoritesController 中的数据时,我得出的结论是,您总是通过执行类似 current_user.favorites.find(param[:id].update_attributes(param[:favorite]) 的操作来执行 CRUD 操作,这样它们肯定只能更新属于给他们。对吧?
更新 对任何答案都不太满意,因为没有人真正回答我的问题,而是采用了仅作为示例的标签模型,提出了更好的方法。我假设我是对的,模型应该属于 :user。我还在这里发现了一些很好的安全提示来解决我的问题:http://asciicasts.com/episodes/178-seven-security-tips
【问题讨论】:
标签: ruby-on-rails data-modeling conventions