0
使用Rails 3.2。我實現個性化網址用戶網址:觸發ActiveRecord :: RecordNotFound而不是返回零
# routes.rb
resources :users
match 'u/:login' => 'users#show', :as => :main_user
# users_controller.rb
class UsersController < ApplicationController
def show
@user = User.where(:login => params[:login]).first
end
end
通常,如果我們用@user = User.find(params[:id])
,它將返回ActiveRecord::RecordNotFound
,然後重定向到500
或404
(不知道哪一個會被重定向到,但是這並不重要)。
但在上述情況下,它只是返回@user = nil
並繼續呈現show
行動。我怎樣才能以一種像搜索id
一樣的方式進行編碼?
太棒了!謝謝 ! – sidney 2015-08-20 14:11:37