当用户注册时,他们会开始创建他们的财务资料。我使用WickedWizard gem来收集他们的财务模型的信息。 finances_welcome 控制器如下所示:
def show
@finance = current_user.finance || current_user.build_finance
render_wizard
end
def update
@finance = current_user.finance || current_user.build_finance
@finance.assign_attributes(finance_params)
render_wizard @finance
end
get_started.html.erb视图如下所示:
<%= form_for @finance, url: wizard_path, :method => :put do |f| %>
<div class="field">
What's your <strong>name</strong>?<br>
<%= f.text_field :name %>
</div>
<div class="field">
What's your <strong>birthday</strong>?<br>
<%= f.date_select :birthday %>
</div>
<div class="field">
What's your <strong>zip code</strong>?<br>
<%= f.number_field :zip %>
</div>
<div class="field">
What's in between <strong>your legs?</strong><br>
<%= f.select(:gender, Finance::Gender) %>
</div>
<%= f.submit "Next", class: "btn btn-primary btn-lg" %>
作为现有用户点击/ finances_welcome / get_started预填充该用户现有财务模型的输入,并允许我更新字段。
但是,作为首次注册的用户,我点击&#34;下一步&#34;并且页面只是刷新。没有错误,新的财务模型未创建。 (不要介意将该模型与用户关联。)
答案 0 :(得分:1)
原来我的步骤错了。
新用户被重定向到此过程的后续步骤,这意味着缺少用户在Finance对象上的必填字段。