現在、以下に簡略化されたビューがあります...
<% if can? :manage, @task %>
Admin
<% elsif can? :update, @task %>
Moderator
<% elsif current_user %>
User
<% else %>
Not logged in
<% end %>
このビューには、ユーザーごとに同様の条件でラップされた多数のフィールドがあり、現在、フォーマットを確認するためにテスト アカウントにログインおよびログアウトする必要があります。
管理者としてログインしたいのですが、ページをAdmin
またはModerator
またはUser
またはとしてレンダリングするかどうかを選択するドロップダウンがありますNot logged in
解決策の大まかなアイデアはいくつかありますが、どれに従うべきかわかりません...
- ナビゲーション バーのドロップダウン フォームから設定できる、ユーザーに関する追加の列を使用して cancan に焼き付けます
- ユーザー固有のメソッドを作成する
- URL パラメーターがセッション ビューを要求し、それに応じてレンダリングできるようにする
これに関するベストプラクティスはありますか?