【发布时间】:2011-07-09 22:38:46
【问题描述】:
假设我正在构建一个拥有许多博客和许多用户的引擎。用户可以有很多博客,博客也可以有很多用户(用户 hasAndBelongsToMany 博客)。我将创建一个名为 users_blogs 的数据透视表,如下所示:
id user_id blog_id role
1 1 1 admin
2 1 2 poster
3 2 2 admin
所以,用户 1 属于博客 1 和 2,用户 2 属于博客 2。用户 1 是博客 1 中的管理员,博客 2 中的海报,用户 2 是博客 2 中的管理员。
也会有帖子。 users_blogs 会有很多帖子,帖子可以有很多 users_blogs。它们将与如下所示的数据透视表连接:
id users_blog_id post_id
1 2 1
2 3 1
因此,参考 users_blogs,博客 2 上的用户 1 与博客 2 上的用户 2 协作创建了帖子 1。
我对 MVC 比较陌生,所以我想知道 A) 第一个表中的“角色”数据是否在它应该在的位置?B) 是否有更正确的方法来执行此结构?框架会为我创造奇迹,我只是想确保这是有意义的,并且我有正确的命名约定。我正在使用 Cakephp,但我也认为这个问题可以由 Rails 程序员来回答。
谢谢!
【问题讨论】:
标签: mysql ruby-on-rails model-view-controller cakephp model