我有一個用戶的顯示頁面,Rails4:連接到控制器
1)路線
get 'users/:id' => 'user#show', as: :user
2)user_controller.rb
class UserController < ApplicationController
before_filter :authenticate_user!, only: :show
def show
@user = User.find_by_name(params[:id]) # for name instead of id
@listings = @user.listings
end
end
,我可以鏈接到它通過「current_user」。
我想創建一個店控制器,所以我按照相同的步驟。我生成的商店控制器和修改的路線和控制器如下:
1)路線
get 'users/:id' => 'user#show', as: :user
get 'shop/:id' => 'shop#show', as: :shop
2.)shop_controller.rb
class ShopController < ApplicationController
before_filter :authenticate_user!, only: :show
def show
@user = User.find_by_name(params[:id]) # for name instead of id
@listings = @user.listings
end
end
這在用戶僅工作如果即時通訊頁面(localhost:3000/users/test),然後單擊鏈接到控制器。然後切換到(localhost:3000/shop/test)。
,如果我嘗試任何地方點擊鏈接其他即時得到
的鏈接 - >
<li><%= link_to "My Shop", :controller => "shop", :action => "show" %></li>
我是相當新的Rails的,如果有人能賜教它將是非常好:)
嗨。你真的想通過名字找到用戶嗎?我認爲使用id是一種更好的方法。 – Bot
這是嚴格的視覺和功能。但我不認爲這是問題:( –
我認爲我是我的鏈接是錯誤的,但我仍然在黑暗中 –