【发布时间】:2012-12-04 02:28:42
【问题描述】:
我正在尝试将 sinatra-authentication gem 添加到 Sinatra 应用程序中,虽然它在其中并完成了它的部分工作,但由于某种原因,这些路由似乎没有被添加。代码基础:
require 'sinatra'
require 'digest/sha1'
require 'rack-flash'
require 'mongo_mapper'
require 'sinatra-authentication'
MongoMapper.connection = Mongo::Connection.new('127.0.0.1', 27017, :pool_size => 5, :pool_timeout => 5)
MongoMapper.database = 'cms'
module CmsMod
class CmsApp < Sinatra::Base
use Rack::Session::Cookie, :secret => 'something secret'
use Rack::Flash
get '/' do
#redirect to('/list') # commented out for testing
end
get '/private' do
login_required
'Protected Page'
end
然后是其余的事情。症状是将浏览器指向我的正常路线可以正常工作。转到“/private”会正确重定向到“/login”,但我收到旧的“Sinatra 不知道这个小曲”消息;如果我尝试直接访问 '/login' 也是一样。我尝试使用 'binding.pry' 来检查 get 块内的内容,并且据我所知路由不存在。任何关于可能导致这种情况的想法都将不胜感激。
【问题讨论】:
-
我也有同样的问题,不过还没找到解决办法。
-
@Masonoise - 你找到原因了吗?
-
我最终把它放在一边,而且还没有必要回到它,遗憾的是......
标签: authentication routes sinatra