我有一个用户信息的常规表格,开头是这样的:
<%= form_for(@user, :html => { :class => "form-horizontal" }) do |f| %>
<%= f.text_field :last_name %>
...
<%= f.submit "Submit", class: "btn btn-primary", :name => "submit_button" if @user.last_step? %>
<% end %>
我在表单中也有一些非用户字段
<%= f.label "When is your birthday?" %>
<%= select_tag "month" %>
<%= select_tag "day" %>
<%= select_tag "year" %>
如何将其保存到与User不同的表中?
如果要更新User以外的模型,可能应该使用accepts_nested_attributes_for
和fields_for
。另一种选择是只做UsersController
的create
操作中的工作,即:
def create
@user = User.create params[:user]
@foo = Foo.find params[:foo_id]
@foo.date = Date.new(params[:foo_year], params[:foo_month], params[:foo_day])
...
end