0

好的,所以我有一个全新的 rails 3.2.3 应用程序,我需要具有许多其他属性(如流派和生日等)的用户。我正在寻求构建数据库的最佳方法。我在想用户和个人资料

class Profile < ActiveRecord::Base
  belongs_to :contact

class User < ActiveRecord::Base
  has_one :profile

并将名字和姓氏以及密码信息放在用户表中,将其他数据放在配置文件表中。我使用设计作为用户身份验证。但是我有一个注册表单,其中包含所需的所有信息,所以有没有一种简单的方法可以避免表单中两个表的嵌套。有没有一种简单的方法可以做到这一点......这看起来很基本,但让我有点困惑

4

1 回答 1

1

就个人而言,我喜欢在同一个表中拥有指向同一个实体的数据,

用户 => 名称、地址、密码……#use role_id 用于不同的角色,即管理员、测试人员、查看者?取决于你需要什么以及它有多复杂。

你想用belongs_to => :user #module\table name

您的表格需要更新以获取类似user.profile.password...的个人资料数据(这是我从您的问题中理解的简单方法)

当您想要编辑时,您可以使用诸如edit_user_profile_path(current_user, @profile)注意路径 user_profile 之类的东西,这是它知道从哪里获取它的地方。

就像在这个答案中一样https://stackoverflow.com/a/4753856/643500


附带说明一下,如果您不精通 Rails,请考虑从头开始编写您的第一个身份验证系统。通过这种方式,您将了解一切的去向,并能够知道如何定制它,或者像设计这样的东西。教程在这里http://ruby.railstutorial.org/ruby-on-rails-tutorial-book

于 2012-04-30T20:43:02.217 回答