我有一個用戶資源,其中:name
是模型上的必需屬性。Rails - 在模型驗證失敗時被URL更改所困惑
如果我嘗試創建一個新的用戶沒有的名稱,然後驗證失敗和錯誤消息在表單的頂部按預期顯示,但從/users/new
頁面的URL改變了,以/users
?
,當我開始與水豚玩弄的第一次,和一個驗證失敗後的預期的current_path是http://localhost:3000/users/new
我無法弄清楚,爲什麼我的天賦我沒有注意到這個問題,直到今晚不及格:
it 'should not create an invalid user' do
fill_in "Name", :with=>""
click_button "Create User"
current_path.should == new_users_path
end
我驗證過它發生在我所有的Rails應用,所以我意識到這是鐵軌的工作方式,但我真的不明白這是怎麼回事的。它爲什麼這樣工作?驗證失敗時,爲什麼路徑從new_users_path
更改爲users_path
?
這讓我很困惑
這些操作的控制器代碼是什麼樣的? – ctcherry