我正在通過Zend框架書工作,並且在更改默認視圖位置的示例中停留了幾天。作爲上市的方法:Zend中的setScriptPath無法找到文件
$this->view->setScriptPath("/views/");
$this->render("news");
我把我的news.phtml
文件中views
目錄(而不是默認的views/scripts/artist
,但我得到的是說找不到網頁的消息我已嘗試的許多方法。網絡,如鍵入
$this->view->setScriptPath("/application/views/");
或
$this->view->setScriptPath(APPLICATION_PATH."/views/");
但都沒有工作。
有人請賜教嗎?
爲了提高清晰度,我懷疑它與我的機器設置有關。我在Mac 10.7上運行,我已經激活了內置的PHP和Apache。既然Zend提供了它自己的堆棧,那麼在設置文件(比如php.ini)中是否會有衝突呢?
更多編輯: 我放下整個方法:
public function newsAction()
{
//Check if the user is logged in
//Get the user's id
//
//Get the artists
$artists = array("Thievery Corporation",
"The Eagles",
"Elton John");
//Set the view vairables
$this->_helper->viewRenderer->setRender('news');
$this->view->setScriptPath(APPLICATION_PATH.'/views/');
$this->_helper->viewRenderer->setNeverController(true)->setRender('news');
}
我把news.phtml
在views
目錄。我輸入的網址是http://localhost:10088/loudbite/artist/news
。 artistController
位於控制器文件夾中。仍然不起作用。 有什麼不對?
我曾嘗試過。我試過的無數組合之一。我不工作。 – Standstill 2012-02-12 03:10:03
在大多數情況下你會得到一個例外,而不是在一些情況下?我在Zend應用程序和獨立程序中都使用了我的精確方法,所以您應該能夠使其工作。你從哪裏試圖做到這一點?控制器還是其他地方? – drew010 2012-02-12 03:14:55
是的。上面的代碼在控制器中,所以視圖將被定向到默認views/scripts /文件夾。如果我通過setScriptPath()更改爲另一個文件夾,我的瀏覽器會說找不到頁面。 – Standstill 2012-02-12 03:45:13