In Rails 3 "GET"と"POST"および他のタイプのリクエストの両方のアクションを指すために使用される一致。
match "user/account" => user#account
これは、GETおよびPOSTリクエストの両方に対するユーザーのコントローラーのアカウントアクションを指します。Rails 4 "match"は廃止されました。 [〜#〜] get [〜#〜]および[〜#〜] post [〜#〜] in Rails 4?
match
ドキュメントから 、match
がある限り、via
を使用できます。
match "user/account" => "user#account", as: :user_account, via: [:get, :post]
編集:as:
パラメーターを追加して、URLヘルパーからアクセスできるようにしました。この場合、user_account_path
またはuser_account_url
。
ルートでは、matchメソッドはキャッチオールオプションとして機能しなくなります。次のオプションを使用して、応答するHTTP動詞を指定する必要があります。
match "/users/:id" => "users#show"
match "/users/:id" => "users#show", via: :get
match "/users" => "users#index", via: [:get, :post]
より良いRails 3.2の互換性は、明示的なget、post、またはその他のHTTP動詞でアクションを指定することです。このオプションを使用すると、コードを現在実行し、アップグレード。
get "/users/:id" => "users#show"
get "/users" => "users#index"
post "/users" => "users#index"