2011-01-29 3 views
1

Я начал использовать Devise для аутентификации в одном из моих проектов Rails. Кажется, что он создает некоторые представления в папке «devise», но они не являются частичными. Мне интересно, что произойдет, если я хочу включить логин или регистр в другой контроллер? Похоже, что он не может быть передан от других контроллеров. Как я могу получить частичное для входа, регистрации и т. Д.?Разработка в Rails - частичные?

ответ

0

У меня есть папка под названием "меню" внутри/приложение/просмотров/изобрести/

В есть 2 обертоны:

_login_items.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 %> 
<li>User: 
    <% if current_user %> 
    <%= current_user.full_name %> 
    <% else %> 
    (not logged in) 
    <% end %> 
</li> 

_registration_items .html.erb

<% if user_signed_in? %> 
    <li><%= link_to 'Dashboard', dashboard_path %></li> 
<% else %> 
    <li><%= link_to 'Sign up', new_user_registration_path %></li> 
<% end %> 

Тогда в любом из моих макетов я хочу включить Войти/регистрацию вещь, я что-то вроде:

<div id="header"> 
    <ul> 
    <li>Some common nav item</li> 
    <%= render 'devise/menu/login_items' %> 
    </ul> 
</div> 

Я считаю, что я узнал, метод из this tutorial (что весьма хорошо)

+2

Это просто ссылки на страницу входа/регистрации. Не то, что вы можете включить в свой собственный взгляд. – Lucas

Смежные вопросы