我有一個模型中的錯誤,是是用@ model.errors訪問時出現在視圖中。然而,他們不顯示,如果我嘗試做Rails錯誤不在f.error_messages中顯示,但在錯誤他們是
<%form_for @applicant do |f|%>
<%=f.error_messages%>
This is zero, freakily: <%=f.error_messages.length%>
But this is not: <%[email protected]%>
然而,存在錯誤,如果我做
@applicant.errors.each
任何建議,我應該去解決呢?這絕對是奇怪的......
否則,表格工作完美。
編輯:感謝ScottD的回答,我弄清楚發生了什麼事。我在這裏簡化了這個問題,但那是問題所在。我真的做此:
<%form_for @applicant.thinger do |f|%>
,這其中就有問題。 form_helper調用的error_messages_for方法需要將事物深入一層(意味着像@applicant這樣的實例變量,然後將其轉換爲:申請人,並且永遠不會像@ applicant.status)。謝謝!
+1這工作,但它是沒有意義的我。我總是使用f.error_messages,它始終工作。正如它在這裏所說,http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html你可以使用FormBuilder實例來獲取錯誤。 – 2009-08-10 18:24:27
我的意思是,謝謝你,如果你有任何建議,爲什麼它不會與f我想知道請。 – 2009-08-10 18:26:37
我在上面的問題中回答了我自己的問題,並感謝您的回答。 – 2009-08-10 18:50:10