2013-05-05 95 views
0

我有下面的窗體,我也想添加一個名稱字段到這個窗體。所以,當我跑我的初始遷移我沒有加名字作爲餐廳屬性,但之後(我認爲)我通過運行「生成遷移名稱列名:餐館」加名Rails窗體文本字段

<%= form_for(@restaurant) do |f| %> 
    <div class="field"> 
    <%= f.label :adress %><br /> 
    <%= f.text_field :adress %> 
    </div> 
    <div class="field"> 
    <%= f.label :review %><br /> 
    <%= f.text_field :review %> 
    </div> 
    <div class="actions"> 
    <%= f.submit %> 
    </div> 
<% end %> 

我想要做這樣的事情:

<%= f.label :name %><br /> 
<%= f.text_field :name %> 

但我得到一個「爲#Restaurant未定義的方法`名」:0x007fd5adc5e330" 錯誤..

回答

1

遷移命令是錯誤的。使用這個:

$ rails generate migration AddNameToRestaurant name:string 

然後手動檢查遷移文件,看它是否正確。

模式改變後,你需要運行

$ rake db:migrate 
$ rake db:test:prepare 

然後你的模型更改生效。

+0

謝謝,我用這個rails生成遷移add_fieldname_to_tablename fieldname:string,不知道它是否相同,但問題解決了! – 2013-05-05 06:15:52

+0

@ GorkemYurtseven,是的,Camal的情況和下劃線是一樣的。 – 2013-05-05 06:17:26