Rolify、Devise、CanCan、および Tabulous を使用するアプリがあります。
私のファイルでは、次のように呼び出してタブのtabulous.rb
を定義できるようにしたいと考えています。Visibility?
(current_user.has_role? :admin)
したがって、config.tabs
do は次のようになります。
# TAB NAME | DISPLAY TEXT | PATH | VISIBILE? | ENABLED?
[ :admin_tab, 'ADMIN' , ingredients_path , (current_user.has_role? :admin) , true ],
/users/sign_in
パスに入ったときを除いて、ほとんどのページで問題なく動作します。次のエラーが返されます。
NoMethodError in Devise/sessions#new
Showing /Users/[myname]/Projects/[project-name]/app/views/layouts/application.html.haml where line #24 raised:
undefined method `has_role?' for nil:NilClass
24 行目は、ファイル=tabs
内の呼び出しを指しているだけです。applications.html
問題は、関数/users/sign_in
にアクセスできないことです。.has_role?
tabulous.rb
ファイルが使用できるようにするにはどうすればよいですか?