在很多教程(特别是身份验证),扬声器说把用户认证和配置文件信息在被叫用户相同的表(模型)。
我的问题很简单:它是安全的把一切都放在一个表? (奖金:这是最好的做法是什么?)
我宁愿建议独立的身份验证信息(电子邮件,密码,盐,...)和个人资料信息(姓,名,出生当天,位置,性别,...)两种型号:用户(认证)和个人资料,并通过HAS_ONE / belongs_to的关联链接模型。
我错了吗? 你有什么建议吗?
谢谢。
在很多教程(特别是身份验证),扬声器说把用户认证和配置文件信息在被叫用户相同的表(模型)。
我的问题很简单:它是安全的把一切都放在一个表? (奖金:这是最好的做法是什么?)
我宁愿建议独立的身份验证信息(电子邮件,密码,盐,...)和个人资料信息(姓,名,出生当天,位置,性别,...)两种型号:用户(认证)和个人资料,并通过HAS_ONE / belongs_to的关联链接模型。
我错了吗? 你有什么建议吗?
谢谢。
如果你想追随数据库normalisations你应该分开的表。 但是,有时它是不是最好的选择...例如,如果你的表users
刚刚email
, password
(用于认证)和name
。 我不会创建一个profile
表只是保存name
,对不对?
因此,这将取决于您的需求,您的设计决策....
我发现这个有趣的讯息吧,在那里@D罗迪斯解释这三种不同的方法的优点和缺点: Storing User Profile in Users Table
, Storing User Profile in User_Profile Table 1-1 relationship to users
和Storing User Profile as properties and values in tables
。
我希望它可以帮助...
我把它们放在单独的模型自己。
有多少行动是有其用户的操作和配置文件一起? 不是很多,有很多在他们需要什么都不知道(或不外乎ID以上)约对方两个构建。