两种型号或一种

时间:2011-07-11 22:43:27

标签: ruby-on-rails ruby-on-rails-3

目前,我有三个型号:

Users, Applications, Permissions

每个用户都有一些默认权限:

eg: Saving something to Disk
    Deleting something from Disk 
    etc (all permissions are booleans)

每个应用程序都需要权限列表。如果默认权限的权限未设置为TRUE,则应用程序会请求这些权限。

所以从这个:

在Permission.rb中我有:

belongs_to :user
belongs_to :application

将权限模型吐出到2个部分(App_Permissions,Default_Permissions)或者您是否建议更聪明(因为保存的默认权限对象的值为application_id)是不是更好?

由于

1 个答案:

答案 0 :(得分:1)

如果它只是用来存储布尔值,我不会使用任何模型。

您可以在表格的单个列中添加许多布尔值,请参阅screencast

说到默认值,我有两种方法:

  • 在迁移中添加默认值

  • 创建常量并使用其值初始化对象

我更喜欢第二个选项,但除非必须由网站管理员动态更改,否则我不会使用Default模型。