2011-11-13 22 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 =>:フォームタグでの投稿が機能します。

なぜレールはputメソッド属性を生成しますか?

+0

であるあなたが働いていないいくつかのコードについての具体的な質問がありますか? ChromeがRailsから機能を削除する方法はありません。 Railsはフォームに隠しフィールドを追加し、それをブラウザ側から完全に独立してサーバ側で処理します。 –

+0

@ Beelington::))もちろん、クロームはレールから何かを取り除くことはできません。 sometingを書く前に質問を数回読んでみてください。また、隠されたフィールドは何をする必要がありますか? – memical

+0

私は質問を読んだが、それは本当に問題ではありませんでした...隠されたフィールドは、アプリケーションにどのようなRESTメソッドを使用するかを伝えるために使用されます。 PUTはすべてのブラウザでサポートされていないため、隠しフィールドを含めることで偽装し、サーバー側で変換します。 RailsはGETとPOST以外のものをサポートするためにブラウザに依存していないので、ブラウザがPUTまたはDELETEをサポートしていなくても動作します。 –

答えて

2

等号は使用しないでください。インスタントレールの実装にも同じ問題があります。レールマニュアルのチュートリアルでは、< & =

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

使用insteandなしで使用する必要があります。

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

これは、すべての

+0

が正しく動作するはずです。動作しているかどうかをGoogleにお知らせください –

関連する問題