2011-11-13 52 views
-2

此表單更新工作項目不再工作。導軌形式不再工作

<%= form_for(@work_item, :url => admin_workitem_update_path) do |f| %> 

生成的標記看起來像這樣:

的形式在ERB文件使用該命令產生

<form accept-charset="UTF-8" action="/admin/workitem/define/14" class="edit_workitem" enctype="multipart/form-data" id="edit_workitem_14" method="put"> 
</form> 

路徑看起來像這樣:

admin_workitem_update PUT /admin/workitem/define/:workitem_id(.:format) 

後續操作:using:method =>:在表單標籤中發佈作品。

爲什麼rails會生成put方法屬性?

+0

你有關於一些不工作的代碼具體問題? Chrome無法從Rails中刪除功能。 Rails爲表單添加一個隱藏字段,然後在服務器端處理它,完全獨立於瀏覽器。 –

+0

@Beerlington::))當然鉻不會刪除軌道上的東西。你可能想在你寫東西之前多讀幾遍這個問題。隱藏領域還有什麼需要做什麼? – memical

+0

我的確讀過這個問題,但這不是一個真正的問題......隱藏字段用於告訴應用程序使用哪種REST方法。由於所有瀏覽器都不支持PUT,因此它通過包含一個隱藏字段並在服務器端轉換它來僞造它。 Rails不依賴於瀏覽器來支持除GET和POST之外的任何內容,即使沒有瀏覽器支持PUT或DELETE,它仍然可以工作。 –

回答

2

從不使用等號形式。 Instant Rails實現中存在同樣的問題。在軌道上的文檔的教程應該沒有< &使用=

<%= form_for(@work_item, :url => admin_workitem_update_path) do |f| %> 

使用insteand:

<% form_for(@work_item, :url => admin_workitem_update_path) do |f| %> 

這是所有

+0

是正確的,它應該工作,讓我們知道它是否工作或沒有 –