Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ZF] Zmiana nazwy pliku kontrolera, Chciałbym zmienić nazwę pliku np. na Controller.php lub samo User.php
Sajrox
post
Post #1





Grupa: Zarejestrowani
Postów: 254
Pomógł: 7
Dołączył: 9.10.2007
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Witam,

Chciałbym stworzyć całkiem inną strukturę projektu, jednak tutaj potrzebuję zmiany nazwy pliku kontrolera. Obecnie mogę to zrobić ale zawsze musi posiadać słowo "Controller".
Generalnie chodzi o to by nazwa kontrolera składała się tylko z Controller.php

  1. $request->setControllerName('');

nie rozwiązuje problemu a powoduje tylko błąd rzecz jasna.


Czy ktoś próbował uzyskać podobny efekt.

Struktura którą chce uzyskać to:
./MODULES/{nazwa_kontrolera}/{nazw_modulu}/Controller.php
./MODULES/{nazwa_kontrolera}/{nazw_modulu}/views/{pliki_widoku}

itd...

Teraz zacząłem od utworzenia pluginu:
  1. class Plugins_AutoloaderSetup extends Zend_Controller_Plugin_Abstract {
  2. public function routeShutdown(Zend_Controller_Request_Abstract $request) {
  3.  
  4. $controller = $request->getControllerName();
  5. $module = $request->getModuleName();
  6.  
  7. Zend_Controller_Front::getInstance()->setControllerDirectory(
  8. MODULES_PATH.'/'.$controller.'/'.$module.'/'
  9. );
  10.  
  11. //$request->setControllerName('');
  12. }
  13. }


Ma ktoś jakieś pomysły ?
Go to the top of the page
+Quote Post
zend
post
Post #2





Grupa: Zarejestrowani
Postów: 580
Pomógł: 85
Dołączył: 25.03.2010
Skąd: Skrzyszów :)

Ostrzeżenie: (0%)
-----


Tworzyłem coś takiego, niestety nie mam już kodu, musisz pogrzebać w dispatcherze + z tego co pamiętam ViewRenderer. W moim przypadku polegało to na wybieraniu kontrolera zależnie od uprawnień użytkownika.
Go to the top of the page
+Quote Post
batman
post
Post #3





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Ale po co?
Jeśli chcesz korzystać z innego frameworka, to zmień ZF na to, co spełni Twoje wymagania. A jeśli będziesz potrzebował jakichś funkcjonalności, to sobie je przeniesiesz.
Go to the top of the page
+Quote Post
jarosek
post
Post #4





Grupa: Zarejestrowani
Postów: 2
Pomógł: 1
Dołączył: 29.03.2010

Ostrzeżenie: (0%)
-----


Zasadniczo bez rozgrzebania kodu źródłowego się nie obejdzie. Musiała być zmienić dispatcher, i napewno ZEnd_Controller_Front.
Jak cchesz mieć takie rozwiązanie to polecamy Symfony, tam wszsytkie kontrolery nazywają się Actions.php
Go to the top of the page
+Quote Post
zend
post
Post #5





Grupa: Zarejestrowani
Postów: 580
Pomógł: 85
Dołączył: 25.03.2010
Skąd: Skrzyszów :)

Ostrzeżenie: (0%)
-----


@jarosek - nie pomagasz (IMG:style_emoticons/default/smile.gif) Wprowadzasz ludzi w błąd pisząc o edycji frontControllera, tam nie ma niczego co trzeba by było nadpisać, conajwyżej ustawić dispatcher
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 10:56