Devise for Rails 4:为什么要将用户配置文件数据保存在单独的 table 到 Devise 用户模型 table

Devise for Rails 4: why should you keep user profile data on a separate table to the Devise User models table

我正在使用设计,并且根据文档建议,我有一个用户模型(用于设计)和一个用于用户数据(例如姓名、工作等)的配置文件模型。为什么它被认为 "not so good" 只是将所有这些属性存储在设计用户模型 table 上。只是好奇。

如果 gem 更改了 table 定义,则向外部源指定的 table 添加字段可能会导致 gem 的未来版本出现迁移错误。

将用户 table 视为设计 gem 的实现细节。修改外部库的源通常不是一个好主意,因为这会使升级变得困难或不可能。

分离关注! User 模型被​​ devise 使用(处理 应用程序身份验证和访问),而 Profile 模型处理所有业务逻辑。