我有一系列 sinatra 应用程序,它们的设置使得每个应用程序负责一件事。
假设我有两个这样的应用程序:
class Foo < Sinatra::Base
get '/' do
'FOO!'
end
end
class Zoo < Sinatra::Base
get '/' do
'ZOO!'
end
get '/zoom' do
# do things
redirect '/'
end
end
现在假设我有我的 config.ru:require './application'
run Rack::URLMap.new('/' => Foo.new, '/zoo' => Zoo.new)
我遇到的问题是,当我尝试在操作中执行重定向时,zoom
我被发送到索引操作Foo
而不是Zoo
. 有没有一种干净的方法来做到这一点,这样我的应用程序就不需要知道如何为应用程序设置路由?