Описание проблемы:Padrino: не удалось найти установленный маршрутизатор после монтирования другой проект в основной проект
Есть два проекта, один является основным проектом, другой проект timesheet_app. , и я хочу установить timeheet_app в основной проект.
когда URL http://localhost:3000/tsheet/base
доступа, это говорит "Синатра не знает эту песенку"
Try this:
# in app.rb
class Qiankun::App
get '/tsheet/base' do
"Hello World"
end
end
Вот выход
DEBUG - 20/Aug/2014 14:15:22 GET (0.0870s) /tsheet/base - 404 Not Found
DEVEL - 20/Aug/2014 14:15:22 Reloading application TimesheetApp::App
DEVEL - 20/Aug/2014 14:15:22 Reloading application TimesheetApp::App
DEVEL - 20/Aug/2014 14:15:22 Reloading application TimesheetApp::Tsheet
DEVEL - 20/Aug/2014 14:15:22 Reloading application TimesheetApp::Tsheet
DEBUG - 20/Aug/2014 14:15:22 GET (0.1120s) /tsheet/__sinatra__/404.png -
04 Not Modified
консоль в timesheet_app себя, после запуска "начала Padrino" , доступ http://localhost:3000/base is ok.
.
в главном проекте, отметьте «рейк-маршруты», найдите другой проект «tsheet/base».
(:base, :index) GET /tsheet/base
нижеследующий код связан с креплением.
в главном проекте apps.rb
Padrino.mount('TimesheetApp::App', :app_file => TimesheetApp.root('app/app.rb')).to('/time_sheet')
Padrino.mount('TimesheetApp::Tsheet', :app_file => TimesheetApp.root('tsheet/app.rb')).to("/tsheet")
в главном проекте Gemfile
gem 'timesheet_app',:path=>"d:\\IdeaLab\\timesheet_app",:require=>"timesheet_app"
Вот код контроллера, довольно просто
TimesheetApp::Tsheet.controllers :base do
enable :reload
get :index do
"hello , tsheet!"
end
end
любая идея? может быть, ошибка в структуре padrino?
Padrino версия 0.12.3