Rails ActionView form_for失败

时间:2012-01-27 00:57:33

标签: ruby-on-rails form-for actionview

我刚刚在我的数据库中添加了一个新列。迁移没有抛出任何错误,数据库看起来也很好。我有一张表格,如此;

<h1>Sign up as a new user</h1>
<% @user.password = @user.password_confirmation = nil %>

<%= error_messages_for :user %>
<% form_for(@user) do |f| -%>

<p><%= f.label :login %><br/>
<%= f.text_field :login %></p>

<p><%= f.fullname :fullname %><br/>
<%= f.text_field :fullname %></p>

<p><%= f.label :email %><br/>
<%= f.text_field :email %></p>

<p><%= f.label :password %><br/>
<%= f.password_field :password %></p>

<p><%= f.label :password_confirmation, 'Confirm Password' %><br/>
<%= f.password_field :password_confirmation %></p>

<p><%= submit_tag 'Sign up' %></p>
<% end -%>

字段f.fullname是我添加的新列。当我尝试加载页面时,它不断抛出错误;

undefined method `fullname' for #<ActionView::Helpers::FormBuilder:0xb6fa73e4>

我的user.rb模型中有这个

attr_accessible :login, :email, :fullname, :password, :password_confirmation

我在这里遗漏了一些关于为什么Rails不断抛出错误的东西?

感谢。

1 个答案:

答案 0 :(得分:1)

看起来错误来自您视图中的拼写错误:

<p><%= f.fullname :fullname %><br/>
<%= f.text_field :fullname %></p>

f.fullname应为f.label

一个线索是错误来自FormBuilder,而不是ActiveRecord派生词。