我有适用于Rails的应用程序。我正在使用设计和omniauth-vkontakte。
我的应用程序可以使用vk.com授权用户,但在用户通过授权后,我的导航菜单会消失。
导航菜单代码位于views/layouts/application.html.erb:
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container">
<div class="authentication">
<% if user_signed_in? %>
<span>Hello, <%= current_user.email %></span>
<%= button_to 'Exit', destroy_user_session_path, {:method => :delete} %>
<% else %>
<%= button_to 'sign up', new_user_registration_path,
{class: 'btn btn-default navbar-btn btn-info', id: 'sign-up-link', :method => :get} %>
<%= button_to 'sign in', new_user_session_path, {class: 'btn btn-default navbar-btn btn-info', id: 'sign-in-btn'} %>
<% end %>
</div>
</div>
</nav>
我还有一个麻烦。当用户通过vkontakte通过授权时,如何进行重定向到主页面的退出按钮? 现在它的工作原理如下:用户通过vkontankte传递auth,我收到了这条消息:
Users::OmniauthCallbacks#vkontakte
Find me in app/views/users/omniauth_callbacks/vkontakte.html.haml
app / views / users / omniauth_callbacks / vkontakte.haml.html中的代码:
%h1 Users::OmniauthCallbacks#vkontakte
%p Find me in app/views/users/omniauth_callbacks/vkontakte.html.haml
app / controllers / users / omniauth_callbacks_controller.rb中的代码:
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
def vkontakte
end
end
答案 0 :(得分:0)
授权后,它会将您重定向到 def vkontakte end 方法,您会看到它的视图。
因此,您可以为此控制器添加一些修改,例如redirect_to root_path
。我现在不知道如何构建你的系统,但这里有一个例子,你可以如何实现它:link(俄语,但你可以查看代码)