2012-12-21 2 views
1

active_admin 멤버 액티비티에서 GET 및 POST 요청을 받아들이고 싶습니다. 어떻게해야합니까?active_admin member_action이 POST 요청뿐만 아니라 GET 및 POST 요청을 받아들이게 만드는 방법

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

을 우리가 방법을 지정하지 않으면, 그것은로 가정 :

이 작동하지 않습니다 수 (볼 소스와 기본은 다음과 같이 설정됩니다 수)

DRY 방식으로 어떻게합니까?

member_action :stats, :method => :post do

member_action :stats, :method => :get do

하지만 난 그렇게해야한다면 난 정말 나쁜 느낄 것 : 나는 두 번 같은 기능을 쓸 수 있습니다!

답변

2

간단한 답 : 할 수 없습니다. member_action을 사용할 때 하나의 동사 만 지원하는 AA : ControllerAction의 인스턴스가 생성됩니다.

희망이 있습니다. :) 더 많은 의미를 갖는 동사와 함께 멤버 액션을 작성할 수 있습니다 (부작용이 있습니까? POST, 북마크 여야합니까? GET). 그리고 나서 routes.rb를 열고 추가하십시오. 이 같은 :

namespace :admin do 
    resources :your_resource do 
    get 'stats', :on => :member 
    post 'stats', :on => :member 
    end 
end 
+0

또는 재정의 논리 기호 배열을 지원하는 라우터 모델에 의해 제공) https://github.com/gregbell/active_admin/blob/master/lib/active_admin/router.rb#L51 – VadimAlekseev

+0

신난다! 감사. 사소한 변형입니다. 액티브 관리자에서 GET 메소드를 사용하여 member_action을 정의하므로 GET 라우트가 생성됩니다. routes.rb 파일에서 POST 라우트 만 지정하면됩니다. 우리는 첫 번째 것을 없앨 수 있습니다. 그렇지 않으면 레이크 루트가 2 개의 길을 보여줍니다. –

관련 문제