2011-07-22 80 views
0

可能重複:
Associated model is not saving data when page is refreshed提交的數據消失

我有一個1:用戶檔案之間的關聯1。 當我提交新的配置文件表單時,我輸入的數據顯示得很好(請參見屏幕截圖:http://i.imgur.com/fY8YU.png),但是當我刷新它時,數據立即被抹掉。

誰能告訴我是什麼原因造成的?

這裏的提交形式:

<%=的form_for([@用戶,@ user.build_profile])做| F | %>
<div class="field">
<%= f.label :first_name %><br />
<%= f.text_field :first_name %>
</div>
<div class="field">
<%= f.label :last_name %><br />
<%= f.text_field :last_name %>
</div>
<div class="field">
<%= f.label :picture %><br />
<%= f.text_field :picture %>
</div>
<div class="field">
<%= f.radio_button(:sex, "male") %>
<%= f.label(:sex, "Male") %>
<%= f.radio_button(:sex, "female") %>
<%= f.label(:sex, "Female") %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>

這裏的users_controller:https://github.com/imjp/SuperModel/blob/master/app/controllers/users_controller.rb

這裏的profiles_controller:https://github.com/imjp/SuperModel/blob/master/app/controllers/profiles_controller.rb

+0

爲什麼你將2個用戶作爲url段傳給你的'form_for'? – coreyward

+0

我不知道男人......這是他們在tutorial.rubyonrails.org入門教程中做到的,它在那裏工作(即使這是一對多的關係)。我對鐵軌還是很新聞,我不是很瞭解所有的東西。他們沒有解釋他們爲什麼要這麼做,要麼 – imjp

+0

任何想法?已提交這篇文章3次已經在過去一週希望有人幫助我..這並不難,如果你知道軌道:( – imjp

回答

0

基本上,它的失敗是因爲:

  • 通過@user.build_profile每次都會實例化一個新的配置文件。

  • 旁註,但我強烈建議您在用戶創建後立即創建配置文件。

Look at my commit on your forked repository

+0

嘿,感謝提交人!以下是我現在通過的錯誤:http://i.imgur.com/GIJCB.png – imjp

+0

好吧,奇怪,應該是用'form_for([@ user,@profile])代替ruby版本的問題' – apneadiving

+0

好工作的人!它現在工作:)我很開心哈哈 – imjp