2012-01-19 3 views
5

Active Admin gem을 사용하고 있으며 사용자가 CSV, XML 또는 JSON으로 데이터를 다운로드 할 수 있도록 각 모델의 색인 페이지에서 링크를 숨기거나 제거하고 싶습니다. 이 일을 할 수있는 방법이 있습니까?Active Admin에서 CSV 다운로드 사용 안 함

답변

1

ActiveAdmin에서는이 구성을 허용하지 않습니다. CSS를 사용하여 해킹합니다. 당신이 다운로드 링크의 경우는 생략 할 수 있도록,

module ActiveAdmin 
    module Views 
    class PaginatedCollection 
     def build_download_format_links(*args) 
     '' 
     end 
    end 
    end 
end 
+0

감사합니다. Akshay. 그것들을 완전히 불가능하게하는 또 다른 해결책은 https://gist.github.com/1641438입니다. 그러나 나는 Github에서 최신 마스터를 시작했을 때만 나를 위해 일했습니다. –

2

위의 CSS를 수정하는 대신에

이 원숭이 패치입니다 네가 원해. 예를 들어

:

ActiveAdmin.register Post do 
    index :download_links => false do 
    # whatever 
    end 
end 
15

이제 인덱스 방식의 옵션 :download_links 있습니다 : app/assets/stylesheets/active_admin.css.scss

.index #active_admin_content #index_footer { 
    color: white; // Hides the 'Download text'. Pagination links are styled on their own 
    a { 
    display: none; // Hides the CSV .. links 
    } 
} 
+0

헤이 @ 키모스, 좋은 첫 번째 대답. – thomasfedb

+3

config/initalizers/active_admin.rb에서 전역으로 설정할 수도 있습니다. – bonyiii

1

당신은 인덱스의 옵션으로 사용해야하지만, 열 기능에서 분리하지 않습니다. 이런 식으로 사용하십시오.

ActiveAdmin.register Post do 
    index :download_links => false do 
    column :title 
    column :body 
    end 
end 

각에서 다운로드 링크를 제거하는 방법을 요구하기 때문에 당신이 열 함수

index download_links: false 
index do 
    column :title 
    column :body 
end 
0

로 지정하는뿐만 아니라, 표시되는 모든 테이블 열을 드릴 것입니다 이걸처럼 사용하지 마십시오 페이지를 작성하는 것이 가장 좋은 방법은 config/initializers/active_admin.rb 파일에 다음 행을 추가하는 것입니다. 이 같은 데이터를 다운로드 할 싶은 곳 옵션

config.namespace :admin do |admin| 
    admin.download_links = false 
end 

당신은 또한 지정할 수 있습니다

config.namespace :admin do |admin| 
    admin.download_links = [:pdf] # Now, it will only show PDF option. 
end 

참고 :이 설정 파일을 수정 한 후 서버를 다시 시작하는 것을 잊지 마십시오.