ActiveAdmin의 actions 버튼에 대한 item
9022 단어 Railsactiveadmin
개시하다
ActiveAdmin은 화면 관리를 간단하게 수행할 수 있는 CRUD의 Gem입니다.
ActiveAdmin은 편리하지만 작은 곳으로 괴롭힘을 당할 때 자주 막히기 때문에 어떻게 설치하는 것이 좋습니다.
이번에는 조건에 따라 나타난 액션스여기 기사.를 참고로 실시하고 싶습니다.
실상에서 아래의 item이라는 기술이 무엇을 하는지 잘 몰라서 조사했습니다.
app/admin/users.rbactions defaults: false do |user|
item I18n.t('active_admin.view'), admin_user_path(user), class: 'view_link member_link'
item I18n.t('active_admin.edit'), edit_admin_user_path(user), class: 'edit_link member_link'
item I18n.t('active_admin.delete'), admin_user_path(user), class: 'delete_link member_link', method: :delete, data: { confirm: I18n.t('active_admin.delete_confirmation') } unless user.admin?
end
뭐 해요?
item을 제거하면 Syntax Error가 됩니다.
app/admin/users.rbactions defaults: false do |user|
I18n.t('active_admin.view'), admin_user_path(user), class: 'view_link member_link'
item I18n.t('active_admin.edit'), edit_admin_user_path(user), class: 'edit_link member_link'
item I18n.t('active_admin.delete'), admin_user_path(user), class: 'delete_link member_link', method: :delete, data: { confirm: I18n.t('active_admin.delete_confirmation') } unless user.admin?
end
item이 필요하다는 것을 알았지만pry로 item의 내용이 어떤지 봅시다.
app/admin/users.rbactions defaults: false do |user|
binding.pry
item I18n.t('active_admin.view'), admin_user_path(user), class: 'view_link member_link'
item I18n.t('active_admin.edit'), edit_admin_user_path(user), class: 'edit_link member_link'
item I18n.t('active_admin.delete'), admin_user_path(user), class: 'delete_link member_link', method: :delete if user.id == 1
end
그렇군요. item이 a 라벨을 만들고 있다는 것을 알았습니다.
아이템으로 보자.
item 매개 변수를 줄 수 있습니다.
app/admin/users.rb actions defaults: false do |user|
item('hoge')
end
위에서 설명한 대로 다음 동작이 생성됩니다.
hoge라는 이름으로 링크가 생성되었습니다. /admin/users
또한 두 번째 매개 변수를 item에 맡길 수도 있다.
app/admin/users.rbactions defaults: false do |user|
item('hoge', '/admin/hoge')
end
여기hoge
의 이름으로 /admin/hoge
에 링크가 생성됩니다.
최후
맞춤형 액션스를 발견할 때 매개 변수를 item에 전달하면 다양한 링크를 생성할 수 있습니다.
액션스에 대한 소스 코드는 여기.입니다. 궁금하신 분들은 참고하세요.
참고 자료
actions defaults: false do |user|
item I18n.t('active_admin.view'), admin_user_path(user), class: 'view_link member_link'
item I18n.t('active_admin.edit'), edit_admin_user_path(user), class: 'edit_link member_link'
item I18n.t('active_admin.delete'), admin_user_path(user), class: 'delete_link member_link', method: :delete, data: { confirm: I18n.t('active_admin.delete_confirmation') } unless user.admin?
end
item을 제거하면 Syntax Error가 됩니다.
app/admin/users.rb
actions defaults: false do |user|
I18n.t('active_admin.view'), admin_user_path(user), class: 'view_link member_link'
item I18n.t('active_admin.edit'), edit_admin_user_path(user), class: 'edit_link member_link'
item I18n.t('active_admin.delete'), admin_user_path(user), class: 'delete_link member_link', method: :delete, data: { confirm: I18n.t('active_admin.delete_confirmation') } unless user.admin?
end
item이 필요하다는 것을 알았지만pry로 item의 내용이 어떤지 봅시다.
app/admin/users.rb
actions defaults: false do |user|
binding.pry
item I18n.t('active_admin.view'), admin_user_path(user), class: 'view_link member_link'
item I18n.t('active_admin.edit'), edit_admin_user_path(user), class: 'edit_link member_link'
item I18n.t('active_admin.delete'), admin_user_path(user), class: 'delete_link member_link', method: :delete if user.id == 1
end
그렇군요. item이 a 라벨을 만들고 있다는 것을 알았습니다.
아이템으로 보자.
item 매개 변수를 줄 수 있습니다.
app/admin/users.rb actions defaults: false do |user|
item('hoge')
end
위에서 설명한 대로 다음 동작이 생성됩니다.
hoge라는 이름으로 링크가 생성되었습니다. /admin/users
또한 두 번째 매개 변수를 item에 맡길 수도 있다.
app/admin/users.rbactions defaults: false do |user|
item('hoge', '/admin/hoge')
end
여기hoge
의 이름으로 /admin/hoge
에 링크가 생성됩니다.
최후
맞춤형 액션스를 발견할 때 매개 변수를 item에 전달하면 다양한 링크를 생성할 수 있습니다.
액션스에 대한 소스 코드는 여기.입니다. 궁금하신 분들은 참고하세요.
참고 자료
actions defaults: false do |user|
item('hoge')
end
actions defaults: false do |user|
item('hoge', '/admin/hoge')
end
맞춤형 액션스를 발견할 때 매개 변수를 item에 전달하면 다양한 링크를 생성할 수 있습니다.
액션스에 대한 소스 코드는 여기.입니다. 궁금하신 분들은 참고하세요.
참고 자료
Reference
이 문제에 관하여(ActiveAdmin의 actions 버튼에 대한 item), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/okmtz/items/beff37af0515be88e88d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)