Здравствуйте!
Разрабатывал проект в development версии (а именно возился с CanCanCan) и на минутку стало интересно, а как выглядят ошибки доступа в production версии. Дело до этого так и не дошло...
Проект запустился без проблем, но на сайте висело это:
Это из-за этого кода:
<% if current_user.has_role? :admin %>
Есть доступ админа
<% else %>
Нет доступа админа
<% end %>
Вырезка из лога:
ActionView::Template::Error (undefined method `has_role?' for nil:NilClass):
2:
3: <%= notice %>
4:
5: <% if current_user.has_role? :admin %>
6: Есть доступ админа
7: <% else %>
8: Нет доступа админа
app/views/home/index.html.erb:5:in `_app_views_home_index_html_erb___2839417483853351120_70310855782180'
Я не понимаю почему так, ведь все делал по официальной документации... Ладно, на время удалил этот кусок кода.
Перезапустил проект. Но теперь очередная беда:
Это про файлы:
site.ru/stylesheets/home.css
site.ru/javascripts/application.js
В слое в head есть это:
<%= stylesheet_link_tag 'home', media: 'all', 'data-turbolinks-track' => true %>
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
Такого в development версии не было. Я даже не понимаю что за css и почему он его пытается откуда то взять. Вроде всегда sass файлы цеплял.
Короче. Это две большие проблемы, которые теперь меня очень сильно волнуют и отвлекают.
Помогите, пожалуйста, их справить.