Ruby on rails Rails 3.2对用户帐户和配置文件使用单独的模型有什么好处吗?

Ruby on rails Rails 3.2对用户帐户和配置文件使用单独的模型有什么好处吗?,ruby-on-rails,authentication,devise,models,Ruby On Rails,Authentication,Devise,Models,我只是想知道,对于用户和用户配置文件,使用不同的模型是否有任何好处 通过这种方式,我可以将用户详细信息(如姓名、地址和D.O.B)的存储与身份验证分开 目前,我想使用Desive进行身份验证,但我希望,如果我将来需要或想要更改此功能,这样做会更容易 另外,我认为不使用一个具有更多行数的模型可能会有一些轻微的性能优势?如果您想准备进行多提供商身份验证(例如,使用),最好在模式中使用。比如说 class User < ActiveRecord::Base has_many :authori

我只是想知道,对于用户和用户配置文件,使用不同的模型是否有任何好处

通过这种方式,我可以将用户详细信息(如姓名、地址和D.O.B)的存储与身份验证分开

目前,我想使用Desive进行身份验证,但我希望,如果我将来需要或想要更改此功能,这样做会更容易


另外,我认为不使用一个具有更多行数的模型可能会有一些轻微的性能优势?

如果您想准备进行多提供商身份验证(例如,使用),最好在模式中使用。比如说

class User < ActiveRecord::Base
  has_many :authorizations
end

class Authorization < ActiveRecord::Base
  belongs_to :user
end
class用户
然后,用户用于登录的每个提供商都有单独的身份验证记录,例如您的本地登录、Twitter、Facebook等


拥有一个
权限
模型,该模型具有许多:授权
,作为保存特定于每个提供者的数据(例如图标、api密钥)的好地方也可能很有用。

如果您想准备进行多提供者身份验证(例如使用),最好在您的模式中使用。比如说

class User < ActiveRecord::Base
  has_many :authorizations
end

class Authorization < ActiveRecord::Base
  belongs_to :user
end
class用户
然后,用户用于登录的每个提供商都有单独的身份验证记录,例如您的本地登录、Twitter、Facebook等


拥有一个
权限
模型,
有很多:权限
作为保存每个提供者特定数据(例如图标、api密钥)的好地方也可能很有用。

不要担心“性能”:在这种情况下,这是一个毫无根据的问题。我同意性能不应该是一个问题,如果它成为问题,就解决它,以前没有。但我认为你将关注点(即身份验证和配置文件信息)分开的本能是好的。不要担心“性能”:在这种情况下,这是一个毫无根据的关注点。我同意性能不应该是这里的问题-如果它成为问题,就解决它,而不是在之前。但我认为你的直觉是将关注点(即身份验证和个人资料信息)分开是一个很好的选择。谢谢,我有一种直觉,在未来的升级中,以这种方式构建我的模型会有好处。这正好证实了我的直觉,我有一种直觉,在未来的升级中,以这种方式构建我的模型将是一种优势。这正好证实了我的直觉