1

私は最近、POST 経由でデータを送信するためにこれまでに見たすべてのサンプル コードが、コントローラーで #create メソッドを自動的に呼び出すこのデフォルトのルート URL に常にルーティングされるという Rails で問題を抱えています。POST経由でデータを送信するフォームを作成する方法を知りたかったのですが、定義した別のメソッドに送信しますか?

この特定の例では、ファイルのアップロードを許可する必要があるウィジェットがあります。ただし、このアップロードによって作成または置換が行われる可能性がありますが、どちらの場合も、ページ上のこのウィジェットにのみ固有のものです。ものを作成できるウィジェットは他にもあり、作成メソッドを介してすべてをルーティングするのではなく、それらのロジックを分離しておく必要があります。どうすればいいですか?

4

1 に答える 1

2

これが、カスタム POST ルートを作成する方法です。

ルートでは、

resources :whatevers do
  member do
    post 'customizedpost'
  end
end

どんなコントローラーでも

def customizedpost
  # all the post stuff
end

そして、たとえばあなたのフォームで

= form_for @whatever, url: customizedpost_whatever_path, html: { method: :post } do |f|
于 2012-11-12T20:21:14.317 に答える