我正在构建一个Rails照片库应用程序,该应用程序允许用户创建私人图库并邀请用户以不同权限(即查看器和编辑器)访问图库。ActiveRecord与关联类型字段的多对多表 - Rails
我想到galleries_users表将需要解决许多一对多relationsip:
user_id | gallery_id
--------------------
1 | 4
--------------------
2 | 4
但我应存储关联许可类型?我可以只添加一个permission
字段:
user_id | gallery_id | permission
---------------------------------
1 | 4 | edit
---------------------------------
2 | 4 | view
这是正确的轨道吗?
我也看到了Rolify的宝石,但使用这将意味着添加一个用户到一个画廊(通过上面的方法),并通过Rolify的界面分别添加一个角色。除非有办法,我可以跳过将用户添加到画廊并将角色视为关联的第一步?
感谢您的回复。对不起,我忘了提及没有画廊老板。创建图库的用户应自动获得编辑权限。这意味着混合邀请用户和创作者不是问题 – slehmann36
@ slehmann36 ..在这种情况下,多对多关系似乎是更好的方法。而关于权限领域,我认为需要有这样的区分因素,所以有权限的领域是必须的,或者你可能会想到两个单独的领域,如edit_permission,view_permission等,这可能会帮助你查询数据库。 –