我是一个完整的 Rails 菜鸟,我正在开发我的第一个 Rails 应用程序。
我希望每个用户都有一个个人资料,与users
表格分开,但通过 id 链接。我以前在 PHP 中做的很好,但是 rails 语法是新的。:/
当每个用户通过设计注册时,如何为他们创建个人资料?以及如何链接他们的users/edit
页面来编辑他们的个人资料?
我是一个完整的 Rails 菜鸟,我正在开发我的第一个 Rails 应用程序。
我希望每个用户都有一个个人资料,与users
表格分开,但通过 id 链接。我以前在 PHP 中做的很好,但是 rails 语法是新的。:/
当每个用户通过设计注册时,如何为他们创建个人资料?以及如何链接他们的users/edit
页面来编辑他们的个人资料?
您应该阅读有关关系的本教程
在 Rails 中声明关联真的很容易。在您的app/models/user.rb
中,您可以执行以下操作:
has_one :user_profile
您的用户的个人资料是一个不同的对象,有自己的表格。只需确保其中包含外键user_id即可,一切顺利(此外,您应该belongs_to :user
在用户的配置文件模型中指定)。
现在,使用 Devise,如果您想确保在用户注册后创建配置文件,您可以执行类似的操作(仍在您的用户模型中):
after_create :create_child
# Creating child Elements
def create_child
UserProfile.create("user_id" => id)
end
然后,如果您想将特定 URL“链接”到控制器,请参阅路由教程
希望能帮助到你。