2

Rails 4を使用していますが、初めて使用します。
get および post リクエストに対して同じアクションを使用しています。次のように実行できることがわかっています。
post '/auto-links', to: 'main#auto_links'
get '/auto-links', to: 'main#auto_links'

しかし、これがこれを行う唯一の方法であることを知りたいですか?
使用してみmatch '/auto-links' => 'main#auto_links'ましたが、次のエラーが発生します。

matchHTTP メソッドを指定せずにルーターでメソッドを使用しないでください。アクションを GET と POST の両方に公開する場合は、via: [:get, :post]オプションを追加します。アクションを GET に公開する場合getは、ルーターで次を使用します。代わりに: match "controller#action" Do: get "controller#action"

get メソッドと post メソッドの両方へのルートを定義するステートメントを 1 つだけ記述する他の方法はありますか?

4

3 に答える 3

3

警告は、次のことを行うように指示するだけです。

match '/auto-links' => 'main#auto_links', via: [:get, :post]
于 2013-10-11T12:07:56.710 に答える
0

これは、単一行でそれを行う方法です

match 'post/:id' => 'posts#show', via: [:get, :post]
于 2013-10-11T12:08:26.970 に答える
0
match '/auto-links', to: 'main#auto_links', via: [:get, :post]
于 2013-10-11T12:09:48.327 に答える