0

ルート

resources :cars do
  collection do
    get :f01a
  end
end 

コントローラ

class CarsController < ApplicationController
  def f01a
    @user = User.find(params[:id])
    @count = Count.find_by_user_id(@user)
    @count.increment!(:f02)
    redirect_to @user
  end
end

意見

<%= button_to "add f01", f01a_cars_path %>

私はこれを機能させることができません。ボタンからこのコードを実行する必要があります。

4

1 に答える 1

2

button_toPOSTリクエストを送信しますが、ルーティングはGETリクエストのみを受け入れるように設定されています。次のように変更する必要があります。

resources :cars do
  collection do
    post :f01a
  end
end

アクションで使用しているが、送信していないため、 :params[:id]で渡す必要があります。button_to

<%= button_to "add f01", f01a_cars_path(:id => something)

something(渡したいIDに置き換えてください。)

于 2012-09-06T03:00:02.960 に答える