在我的 Rails 3 应用程序中,我使用 abefore_filter
来确保该操作只能由permanent
用户使用,即非来宾用户:
def permanent_user
@user = User.where('guest != ?', true).find(params[:id])
redirect_to(root_path) unless current_user?(@user)
end
问题是ActiveRecord::RecordNotFound
当数据库中的总用户数非常低时,我经常在第一行出现错误。
如何改进我的功能以创建@user
对象或nil
?
谢谢你的帮助。