我有一個Rails引擎(用於身份驗證,但我認爲這不重要)。它與傳統的一樣,在/spec
目錄中有一個虛擬應用程序。 引擎在應用程序中定義了幾條路線,而虛擬應用程序定義了它自己的一些路線。Pow無法識別引擎創建的路線
當我在WEBrick中使用rails s
運行虛擬應用程序時,它工作正常。但是,當嘗試使用戰俘運行(在~/.pow
符號鏈接到my_engine/spec/dummy
),它似乎並沒有認識到由發動機提供的路線,我也得到:
ActionController::UrlGenerationError at /login
No route matches {:action=>"new", :controller=>"my_engine/sessions"}
有什麼不對的,爲什麼呢它只發生在Pow?
這裏是路線文件,如果它的事項:
my_engine /配置/ routes.rb中:
Rails.application.routes.draw do
get 'login', :controller => 'my_engine/sessions', :action => :new
post 'login', :controller => 'my_engine/sessions', :action => :create
get 'logout', :controller => 'my_engine/sessions', :action => :destroy
end
my_engine /規格/空/配置/ routes.rb中:
Rails.application.routes.draw do
mount MyEngine::Engine => "/auth"
root 'home#index'
controller :home do
get :index
get :private, :as => 'private'
end
end
編輯:我確定這不起作用,當引擎在正常的應用程序中使用a很好,所以它不只是虛擬應用程序。