Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [ZendFramework] modele w aplikacji z modułami
Daimos
post
Post #1





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


Witam
Ciekawi mnie jakie Wy macie rozwiązania na modele w aplikacjach z modułami.
Kiedy ustawimy sobie moduły, autoloader automatycznie nam dopisuje ścieżkę do modeli "zbiorczych", które są w katalogu głównym aplikacji, a teraz co z modelami, które mają być dedykowane dla danego modułu?
Czyli jak wywołać model, który będzie np. w katalogu:
Cytat
application/module/NAZWAJAKAS/models/ModelTestowy.php

Tam autoloader sam już nie wejdzie, trzeba sobie radzić. Niektórzy robią to dodając include_paths do każdego modułu, inni piszą plugin, który dodaje include_path oddzielnie dla każdego modułu, np:
  1. public function dispatchLoopStartup(Zend_Controller_Request_Abstract $req)
  2. {
  3. $moduleName = $req->getModuleName();
  4. PATH_SEPARATOR . APPLICATION_PATH . '/modules/' . $moduleName . '/models');
  5. }

Macie na to jakieś ciekawe rozwiązania?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Daimos
post
Post #2





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


Nie chodzi mi o bootstrap dla kazdego modulu, bo akurat bootstrap potrzebny mi jest tylko jeden
Domyslne przestrzenie nazw to nie:
Cytat
application/modules/default/controllers
application/modules/default/models
application/modules/default/forms
application/modules/default/plugins
application/modules/default/services

tylko:
Cytat
application/controllers
application/models
application/forms
application/plugins
application/services

W przypadku jednego bootstrapa

Przeczytałem wszystkie te manuale zanim napisałem tu posta (IMG:style_emoticons/default/winksmiley.jpg)
Nigdzie nie ma tego problemu opisanego. Kiedy mam model w katalogu z modułem, nie idzie go załadować bez dodatkowych zabiegów (wcześniej wspomniany plugin).

Podsumuje:
Mam jednego bootstrapa, bo więcej mi nie potrzeba
Struktura katalogów, dla przykładowego modułu przedstawia się tak:
application/module/default/
application/module/default/controllers
application/module/default/models
application/module/default/views
application/models - zbiorcze modele
application/Bootstrap.php

I teraz tak, zbiorcze modele w katalogu application/models autoloader wczytuje bez problemu, ale tych w module, już nie: application/module/default/models...
i interesują mnie rozwiązania na ten problem


chodzi Ci o to, ze kazdy bootstrap te przestrzenie doda? Wiec tez to jakies rozwiazanie, ale po co mi x Bootstrap`ow, kiedy sa zbedne? Mam wszedzie kopiowac ? Dziedziczyc? To rozwiazanie w niektorych przypadkach moze byc dobre, ale ja chce jeden (IMG:style_emoticons/default/smile.gif)

Ten post edytował my salsa 17.10.2010, 14:39:06
Go to the top of the page
+Quote Post

Posty w temacie


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: 28.12.2025 - 11:02