我有末日的基础应用,如:如何在Sinatra模块化应用程序中从模块路径重定向到根应用程序路径?
class MyApp < Sinatra::Base
get '/' do
..
end
get '/login' do
..
end
end
和一些子模块,如
class Protected < MyApp
before '/*' do
redirect('/login') unless logged_in
end
get '/list' do
...
end
end
我config.ru就像下面
map "/" do
run MyApp
end
map "/protected" do
run Protected
end
我得到重定向循环当试图访问/protected/list
是因为它试图重定向到/protected/login而不是/登录从主应用程序。 我如何强制它做正确的重定向?我知道我可以使用redirect to('../login')
,但看起来很糟糕。