2012-01-27 25 views
0

我剛剛添加一個新的列到我的數據庫。遷移沒有引發任何錯誤,數據庫看起來像遷移也很好。我有一張表格,Rails的ActionView form_for失敗

<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的不斷拋出的錯誤?

謝謝。

+0

ActionView :: FormBuilder是否使用schema.rb文件來確定哪些字段可用於構建表單?它也位於schema.rb文件中。 – Skittles 2012-01-27 00:59:18

回答

1

它看起來像錯誤是從您的視圖一個錯字未來:

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

f.fullname應該f.label

一個線索將是錯誤來自FormBuilder而不是ActiveRecord派生。

+0

哇!我不敢相信我沒有聽到。我無法告訴你我有多尷尬,但是我也非常感謝你的回答。謝謝! :) – Skittles 2012-01-27 01:58:30

+0

這工作,順便說一句。 – Skittles 2012-01-27 01:58:49