Ruby on rails 您是否需要新的和创建配置文件的方法?

Ruby on rails 您是否需要新的和创建配置文件的方法?,ruby-on-rails,ruby,ruby-on-rails-3,profile,Ruby On Rails,Ruby,Ruby On Rails 3,Profile,假设Profile是它自己的模型,用户只有一个Profile。创建用户时,应自动为其提供默认的空配置文件。所以我假设我不需要profiles控制器的新操作或创建操作,只需要更新、编辑和显示。这个假设正确吗?如果是这样,我如何自动生成一个空的配置文件?在我的用户创建方法中?是的,您可以在用户模型中处理创建。定义一个has#one关联会自动包括用于构建和创建的方法(在本例中是用户#创建#概要文件和用户#构建#概要文件)。一个好的做法是设置一个调用build_profile的before_create

假设Profile是它自己的模型,用户只有一个Profile。创建用户时,应自动为其提供默认的空配置文件。所以我假设我不需要profiles控制器的新操作或创建操作,只需要更新、编辑和显示。这个假设正确吗?如果是这样,我如何自动生成一个空的配置文件?在我的用户创建方法中?

是的,您可以在用户模型中处理创建。定义一个has#one关联会自动包括用于构建和创建的方法(在本例中是用户#创建#概要文件和用户#构建#概要文件)。一个好的做法是设置一个调用build_profile的before_create回调,这样,如果配置文件没有保存,就不会得到孤立的用户记录


就控制器而言,我通常甚至不喜欢为用户配置文件制作单独的控制器。由于每个用户记录都会有一个概要文件记录,所以您可以将概要文件属性视为在逻辑上等同于用户属性(它们主要是为了组织的缘故而放在自己的表中)。这样,您就可以将配置文件内容附加到通常的用户CRUD操作中。如果你真的喜欢一个单独的PrruleSub控制器的想法,考虑把它设置成嵌套的资源,因为你在处理配置文件时总是有一个用户标识。我的意思是
build\u profile
方法应该是什么样子的?它已经为您准备好了:当您说
has\u one:profile