1

私の active_admin メンバー アクションが GET および POST 要求を受け入れるようにします。私は何をすべきか?

これは機能しません:

member_action :stats, :method => [:get, :post] do

また、メソッドを指定しない場合は、それが :get であると想定されます (ソースを表示し、デフォルトは :get に設定されています)。

DRY で行うにはどうすればよいですか? 同じ関数を 2 回書くことができます。

member_action :stats, :method => :post do

member_action :stats, :method => :get do

しかし、そうしなければならないとしたら、私は本当に気分が悪いでしょう!

4

1 に答える 1

2

簡単な答え:できません。member_actionを使用する場合、1つの動詞のみをサポートするAA:ControllerActionのインスタンスを作成するだけです。

しかし、希望があります:)、より意味のある動詞を使用してメンバーアクションを記述し(副作用はありますか?POST、ブックマーク可能である必要がありますか?GET)、routes.rbを開いて次のようなものを追加できます:

namespace :admin do
  resources :your_resource do
    get 'stats', :on => :member
    post 'stats', :on => :member
  end
end
于 2012-12-21T14:29:23.010 に答える