ActionView :: MissingTemplate при попытке разработать элементы входа - PullRequest
2 голосов
/ 23 ноября 2010

Теперь, я должен признать, я совершенно новичок в Ruby on Rails и не совсем понимаю каждую концепцию.Я установил Devise для аутентификации и следовал этому руководству , чтобы включить ссылки для регистрации и входа в мои представления.

Вот что я сделал в своей application.html.erb:

<ul class="hmenu">
  <%= render 'devise/menu/registration_items' %>
  <%= render 'devise/menu/login_items' %>
</ul>

И мой views/devise/menu/_login_item.html.erb выглядит так:

<% if user_signed_in? %>
  <li>
  <%= link_to('Logout', destroy_user_session_path) %>        
  </li>
<% else %>
  <li>
  <%= link_to('Login', new_user_session_path)  %>  
  </li>
<% end %>

Теперь я получаю следующее сообщение об ошибке:

ActionView::MissingTemplate in Home#index
Missing partial devise/menu/login_items with {:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]} in view paths "/Users/blah/Documents/webapp/mapeval/app/views", "/Users/blah/.rvm/gems/ruby-1.9.2-p0/gems/devise-1.1.3/app/views"

В чем причина этой ошибки?

1 Ответ

3 голосов
/ 23 ноября 2010

Ваш частичный имеет недопустимое имя файла (отсутствует s в конце).Переименовать views/devise/menu/_login_item.html.erb в views/devise/menu/_login_items.html.erb

...