比方说,我的控制器看起来像这样:如何处理before_filter中的无效ID?
class MyController < ApplicationController
before_filter :find_user,:only => [:index,:create,:update,:destroy]
def index
@some_objects = @user.objects.all
end
...
private
def find_user
@user = User.find(params[:user_id])
end
end
如果user_id
参数不存在,@user将nil.I认为这是没有办法的办法:
def index
if @user
@some_objects = @user.objects.all
else
# ?
end
end
的代码看起来uglier在我的控制器中进行所有这些检查......更不用说,如果其他控制器与此类似,我将不得不复制很多逻辑。 你如何处理这些案件?
我不知道这个宝石。谢谢(你的)信息。 – santuxus 2011-06-07 07:43:39