0

Activeadmin を使用し、いくつかのカスタマイズを行っています。既存のアプリケーション コントローラー/ビューをほとんど扱っていません。それを知りたい場合は、ビュー内で管理ポータルから来たかどうかを確認してください。

したがって、アプリケーションでいくつかの方法で使用しているパーシャルがあり、さらに現在、activeadmin からも使用しているため、そのパーシャルで、これが app からのものか activeadmin からのものかを知りたいので、要するに url かどうか含む<host>/adminか含まないか。

もっと良い方法はありますか?

4

1 に答える 1

0

管理者ユーザーのみが ActiveAdmin UI を介してパーシャルに到達できると仮定すると、管理者であるユーザーを照会できます。認証に Devise を使用する場合は、次のようになります。

<% if admin_signed_in? %>
  <%= render "your_only_admin_content %>
<% end %>

編集:

管理者が通常のサイトを閲覧するときとアクティブな管理者を介して閲覧するときを区別したい場合は、ネストされたレイアウトを使用することができます。そのためには、2 つのレイアウトを使用する必要があります。1 つは管理者用で、もう 1 つは通常のサイト閲覧用です。2つのケース間で部分的なものだけが共有されていると言ったので、すでにそうである可能性が最も高いです。ネストされたレイアウトを使用するには、パーシャル内に次を配置します。

<%= yield(:admin_user) if content_for?(:admin_user) %>

そして、管理者が使用するレイアウト:

<% content_for :admin_user do %>
  <%= render "your_only_admin_content %>
<% end %>
于 2012-10-26T10:03:16.370 に答える