Pergunta

Agora, tenho que admitir, sou totalmente novo no Ruby on Rails e não entendo muito bem todos os conceitos. Eu instalei o Deviso para Autenticação e segui este guia Para incluir, inscreva -se e login links em meus pontos de vista.

Aqui está o que eu fiz no meu application.html.erb:

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

E meu views/devise/menu/_login_item.html.erb se parece com isso:

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

Agora recebo a seguinte mensagem de erro:

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"

Qual é a causa desse erro?

Foi útil?

Solução

Seu parcial tem nome de arquivo inválido (faltando s no final). Renomear views/devise/menu/_login_item.html.erb para views/devise/menu/_login_items.html.erb

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top