刷新页面时,关联模型不保存数据

Rails 3.1 RC4

我在用户个人资料之间有1:1的关联。 当我提交新的个人资料表格时,我输入的数据显示得很好(见截图: http : //i.imgur.com/fY8YU.png ),但当我刷新数据时,数据会立即被删除。

谁能告诉我是什么原因造成的?

这是提交表格:

























这是users_controller: https : //github.com/imjp/SuperModel/blob/master/app/controllers/users_controller.rb

这是profiles_controller: https : //github.com/imjp/SuperModel/blob/master/app/controllers/profiles_controller.rb

我不确定我同意你的做法。 你为什么不这样做:

在models / user.rb中:

 accepts_nested_attributes_for :profile 

在controllers / users_controller.rb中:

 def new @user = User.new @user.build_profile end 

在views / users / _form.html.erb中:

 <%= form_for @user do |f| %> <%= f.text_field :first_name %> <%= f.fields_for :profile do |pf| %> <%= pf.text_field :some_profile_field %> <% end -%> <%- end -%> 

这不是复制或测试,但它应该工作。 在保存用户时,配置文件字段将随用户字段一起发送并validation,并在保存错误后再次呈现表单时重新呈现。 这样,您可以轻松地完全控制表单及其内容。