未定义的方法认证?主要形式:对象



我现在正在学习Sinatra,我正在建立一个小博客。我在authenticated?方法上遇到了点小问题。我已经设置了身份验证,现在我希望我的应用程序的其余部分只在用户经过身份验证时才加载。因此,在我的app.rb中,我有以下内容:

helpers do
  def current_user
    @current_user ||= User.find(session[:user_id]) if session[:user_id]
  end
  def authenticated?
    redirect '/login' unless current_user
  end
end
if authenticated?
  # get '/' { ... }
  # get '/new' { ... }
  # post '/new' { ... }
  # the rest of an app (creating, updating and deleting posts go here)
end

当我运行应用程序时,它返回以下错误

undefined method authenticated? form main::Object

我做错了什么?

根据文档,您将使用您的authenticated?方法如下:

get '/' do
  if authenticated?
    # something
  else
    # something else
  end
end

最新更新