2013-08-12 1 views

답변

3

답변은 configuration documentation for actions에 있습니다. 기본적으로 new을 포함하여 모든 작업이 가능합니다. 가능한 작업을 사용자 정의하려면 config.actions (config/initilizers/rails_admin.rb)에 지원하려는 모든 작업을 나열하고 지원하지 않으려는 작업은 제외하십시오. 캉캉 그것을 구현

# config/initilizers/rails_admin.rb 
RailsAdmin.config do |config| 
    config.actions do 
    # root actions 
    dashboard 
    # collection actions 
    index 
    # `new` is NOT allowed 
    export 
    history_index 
    bulk_delete 
    # member actions 
    show 
    edit 
    delete 
    history_show 
    show_in_app 
    end 
end 
+0

안녕하세요, Rory, 빠른 답변에 감사드립니다. 그것이 이니셜 라이저에 있었기 때문에 모든 모델에 적용됩니다. 모든 모델의 새로운 액션을 숨기지 만 특정 모델에서 새로운 액션을 숨기고 싶습니다. – Senthil

+0

그럴 경우 어떻게해야할지 모르겠습니다. 아마도 [RailsAdmin 문서] (https://github.com/sferik/rails_admin/wiki)의 다른 부분에서 어떻게 설명 할 수 있습니다. 어쩌면 당신은 [소스 코드] (https://github.com/sferik/rails_admin)을보아야 할 것입니다 - [이 부분] (https://github.com/sferik/rails_admin/blob/) master/app/controllers/rails_admin/main_controller.rb # L15-L26)이 관련성이 있습니다. 또는 RailsAdmin이 해당 기능을 지원하지 않을 수도 있습니다. –

+0

필요한 경우 이니셜 라이저를 여러 번 실행할 수있는 해킹이있을 수 있습니다.이 모델을 사용하여 새로운 작업을 비활성화하고 다른 모델에 액세스 할 때 다시 활성화 할 수 있습니다. –

-3

: 예를 들어, 다음 new을 제외하고 기본 작업을 모두 할 수있는 config 블록이다. 위의 대답을 참조하여 레일 관리 방식으로 할 수 있습니다.

URL : https://github.com/sferik/rails_admin/wiki/CanCan

+2

답변으로 선택되었지만 사실이 아닙니다. 위의 내 대답을 참조하십시오. – RubeOnRails

22

나는 특정 모델에이를 달성하려면 다음을 사용합니다. 다행히도 다음이 도움이됩니다.

config.actions do 
    new do 
    except ['Some Model'] 
    end 
end 
+1

완벽하게 작동했습니다. 감사합니다. – StarWars

+0

안녕하세요,하지만 url에 조치를 추가하면 액세스가 허용됩니다. 예'http : // localhost : 3000/dashboard/user/new' :/ – kalelc

+1

위의 rails_admin DSL을 사용하여 @andres는 관리자 만 버튼을 제거합니다. 해당 작업에 대한 경로가 아직 존재하는 한 해당 작업을 수행 할 수 있습니다. –