![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 13.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Posiadam aplikacje zbudowana na modulach. Mam modul default w katalogu glownym oraz modul admin w katalogu modules. Gdy probuje za pomoca $this->action('index', 'login', 'default') w layoucie admina wywolac akcje z modulu default wszystko jest ok poza tym ze widok jest pobierany nie z katalogu modulu default tylko z modulu admin. Jest to formularz logowania, problem polega na tym ze nie ma layoutpath zorientowanego na katalog od modulu default w chwili wywolywania innego modulu. Jak dodac poprawnie kolejna sciezke do resources? Korzystam z pluginu do zmiany layoutpath:
Kod <?php class Application_Plugin_ModuleLayout extends Zend_Layout_Controller_Plugin_Layout { private $_moduleName; public function preDispatch(Zend_Controller_Request_Abstract $request) { $this->_moduleName = $request->getModuleName(); if($this->_moduleName!=='default') { $this->_change($this->_moduleName); } } private function _change($modul) { $this->getLayout()->setLayoutPath( dirname(dirname(dirname($this->getLayout()->getLayoutPath()))) .'/layouts/scripts/'. $modul); // $this->getLayout()->setLayoutPath( // dirname(dirname($this->getLayout()->getLayoutPath())) . DIRECTORY_SEPARATOR . 'modules/' . $moduleName . '/views/layouts'); $this->getLayout()->setLayout('layout'); } } Próba dodania kolejnego layoutpath w sposob jak w powyzszej funkcji konczy sie wywaleniem errora w postaci braku pliku layout w katalogach. Ile sciezek layoutpath macie u was na aplikacjach modulowych dla jakiegos modulu? U mnie sa dwie. Kod Fatal error: Uncaught exception 'Zend_View_Exception' with message 'script 'login/index.phtml' not found in path (D:\xampp\htdocs\mojzend\application/views/layouts/scripts/admin/;D:/xampp/htdocs/mojzend/application/modules/admin/views\scripts/)' Gdy nie skopiuje plikow widoku dla kontrolera login do jednego z wyzej wymienionych katalogow to wywala taki blad. Problem dla mnie jest o tyle uciazliwy ze mam kilka takich rozwiazan na stronie co w przypadku modyfikacji ktoregokolwiek z plikow wymaga kopiowania tylekroć ile mam modulow co przy zwiekszajacej sie jej liczbie prowadzi do straty cennego czasu. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 21.06.2025 - 09:48 |