0
我有兩個用戶類型的主頁:home.html.erb(用戶)和shop_home.html.erb(用於商店)。當我在登錄「用戶」時單擊站點標題中的主鏈接時,它會通過靜態頁面控制器中的home方法將用戶路由到home.html.erb。儘管如此,我仍然無法路由到shop_user.html.erb。 shop_home路線不起作用。靜態頁面的路由問題控制器
shop_header.erb
<% if shop_logged_in? %>
<li id="blacklink"><%= link_to "Home", shop_home %></li>
<li id="blacklink"><%= link_to "Drivers", users_path %></li>
<li id="blacklink"><%= link_to "Log out", shop_logout_path, method: "delete" %></li>
<% end %>
點擊「主頁」鏈接給我undefined local variable or method 'shop_home'
我有什麼做的就是在主頁的鏈接路由到shop_home.html.erb
?
的routes.rb
Rails.application.routes.draw do
get 'shop_sessions/new'
get 'shops/new'
get 'cars/new'
get 'sessions/new'
get 'users/new'
root 'static_pages#home'
get 'shophome' => 'static_pages#shop_home', as:"shop_home"
get 'shop', to: 'static_pages#shop_home', as: 'shop_root'
get 'shops', to: 'shops#index', as: 'shop_index'
get 'help' => 'static_pages#help'
get 'about' => 'static_pages#about'
get 'contact' => 'static_pages#contact'
get 'signup' => 'users#new'
get 'shopsignup' => 'shops#new'
get 'login' => 'sessions#new'
post 'login' => 'sessions#create'
get 'shoplogin' => 'shop_sessions#new', as: 'shop_login'
post 'shoplogin' => 'shop_sessions#create'
delete 'logout' => 'sessions#destroy'
delete 'shoplogout' => 'shop_sessions#destroy', as: 'shop_logout'
resources :users
resources :shops
resources :cars, only: [:create, :destroy, :edit]
end
staticpagescontroller.rb
class StaticPagesController < ApplicationController
def home
if logged_in?
@car = current_user.cars.build
@feed_items = current_user.feed.paginate(page: params[:page])
end
end
def shop_home
@shop = current_shop
end
end
哇哦不能相信我錯過了。謝謝! – 2015-03-03 07:00:24