ActiveAdminのドキュメントは、私がこのようなユーティリティのナビゲーションをオーバーライドすることができると言う:Rails ActiveAdmin - ユーティリティナビゲーションでcurrent_admin_userを取得しますか?
ActiveAdmin.setup do |config|
config.namespace :admin do |admin|
admin.build_menu :utility_navigation do |menu|
menu.add label: "ActiveAdmin.info", url: "http://www.activeadmin.info", html_options: { target: :blank }
admin.add_logout_button_to_menu menu # can also pass priority & html_options for link_to to use
end
end
end
また、デフォルトの表示は、現在のユーザの電子メールアドレスが含まれていることを言います。現在のユーザーの電子メールアドレスはどのように取得されますか? menu.add label
の値をcurrent_admin_user
に置き換えると、current_admin_user
が定義されていないというエラーが表示されます。設定ファイルから現在ログインしているユーザーに関する情報にアクセスするにはどうすればよいですか? ActiveAdminはその背後でどのようにそれをしますか?
は、コードをありがとうございました。なぜそれが場面の裏で働くのか、なぜ私が得たエラーを受けているのか説明できますか? – Kvass
これは、必要なコンテキストで呼び出されるprocsを使用しているために動作します。したがって、current_admin_userはproc呼び出しの瞬間に定義されます。 – Fivell
無関係なqの一種 - ブロックがprocであれば(私の理解では)、なぜブロックに渡すことができないのですか? ':if => {current_active_admin_user? } 'とそれの前に' proc'をスキップしますか?それの前にある 'proc'はどうしますか? – Kvass