Deviseをアプリに統合し、ここで問題にとって重要だと思う現在のコードを統合します。
これが私のサインアウトリンクです
<nav class="round">
<ul>
<li>
<%= link_to "Home", root_path%>
</li>
<li>
<%= link_to "Help (learn Bunch-It)", help_path %>
</li>
<% if signed_in? %>
<li>
<%= link_to "Sign out", destroy_user_session_path, :method => :delete %>
</li>
<li>
<%= link_to "Profile "+current_user.user_name, user_path(current_user), :method => :delete %>
</li>
<%else%>
<li>
<%= link_to "Sign in", new_user_session_path %>
</li>
<%end%>
</ul>
</nav>
次にroute.rb
devise_for :users
#get "sessions/new"
#get "session/new"
resources :users
#resources :sessions, :only => [:new, :create, :destroy]
#get "users/new"
get "pages/home"
get "pages/contact"
get "pages/about"
get "pages/help"
get "results/result"
get 'tree/insertResult' => 'tree#insertResult'
get "tree/deleteFolder" => 'tree#deleteFolder'
get "tree/createFolder" => 'tree#createFolder'
get "tree/deleteResult" => 'tree#deleteResult'
match '/results' , :to => 'results#result'
match '/contact' , :to => 'pages#contact'
match '/about' , :to => 'pages#about'
match '/help' , :to => 'pages#help'
match '/home_index', :to => 'pages#home'
#match '/signin', :to => 'sessions#new'
#match '/signout', :to => 'sessions#destroy'
root :to => 'pages#home'
これが私のコントローラー機能です。ホームページ用
class PagesController < ApplicationController
def home
@title = "Home"
session[:return_to] = request.fullpath
@page = request.path
puts "Welcome home page"
end
...
そして最後にこれが私のプロフィールサイトコントローラーです
class UsersController < ApplicationController
before_filter :authenticate_user!, :only => :token
def index
end
def token
end
def show
@title = current_user.user_name
@haveQuery = false
if @newest_query = findNewestQuery
@common_query = commonQuery
@haveQuery = true
else
@haveQuery = false
end
end
問題は、サインアウトを押したときに、プロファイルサイトを更新するか、現在別のサイトにいる場合はプロファイルサイトに移動することです。ただし、プロフィールページではなく、アプリのホームページに移動したい。私は考えられることは何でもしましたが、解決することはできません。ちょっとしたアイデアは私へのプレゼントのようなものですか?:)