2016-12-07 41 views
1

我正在嘗試使用Kohana 3.3和Heroku開發應用程序。Kohana 3.3子目錄控制器未載入Heroku

的主要問題是當我在子目錄控制器作爲遵循例子

目錄名\的Class1 目錄名\的Class2

Class2中延伸的Class1

然後我已路由設置到該位置,其在我的本地環境中工作得很好(在Ubuntu上使用Apache 2.4和PHP 5.6以及使用XAMPP的Windows進行嘗試),但是當我嘗試在Heroku上訪問此路由時未能打開路由,但發現Class1未找到的錯誤。

我也試過更新htaccess,並更新路由文件幾個時間與不同的選項,仍然在我的本地環境工作。但不可能讓它在Heroku上運行。

這裏是我使用這個路線:

Route::set('dashboard', 'dashboard(/<controller>(/<action>))') 
->defaults(array(
    'directory' => '/dashboard', 
    'controller' => 'Main', 
    'action' => 'index' 
)); 

所以,當我訪問example.com/dashboard效果很好在Heroku上,但是當我試圖example.com/dashboard/something則能夠找到我試圖訪問的控制器(在本例中稱爲Controller_Dashboard_Something),但無法找到主控制器(名爲Controller_Dashboard_Main)。再次在本地這是工作得很好,但在Heroku我不知道我做錯了什麼或它不能正確理解自動加載器....

所以任何人都可以幫助我會感激。

謝謝

回答

0

我找到了一種可能對他人有幫助的解決方法。這不是明智的解決方案,但它的工作原理。

我在Class2文件中添加了以下行。

require "Class1" 
0

dirname \ Class1中的控制器必須具有類名稱Controller_dirname_Class1。所有部分對於Linux主機都是區分大小寫的,這可能是Heroku中的問題,因爲在Windows中這並不重要。