身份验证 - 设计 授权 - CanCan,Rolify
我在Devise中有一个User模型,结合CanCan和Rolify来设置角色和能力。这可行,但由于下面的第一个要求,开始变得复杂。我不确定“角色”是区分这些帐户的最佳方式,因为它们具有非常不同的字段集和能力。
为三种用户类型设置不同的Devise模型会更好吗? (第二个要求很复杂。) 或者,最佳做法是将所有用户保留在一个模型中并分配角色和能力,就像我现在所做的那样?
要求:
我在这里看到了几个关于实现这些方法的具体细节的答案,但我正在寻找关于哪种方法更适合我的应用的建议。我在Devise中投入太多了吗?我意识到这只是一个身份验证框架。我应该为个人属性设置单独的用户模型吗?
好像你无法分辨 - 我是新手,仍在尝试获取概念。
答案 0 :(得分:0)
一个建议是使用Devise使事情尽可能简单,并通过User模型中的单个字符串字段管理角色。然后你只有一个字段来检查身份验证,你可以为教师和学生所需的其他属性制作另外两个独立的模型,因为它们很容易通过Rails'助手(belongs_to等)。