Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony] Projekt a Bundle
bambam
post
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 4.09.2011

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


Witam ponownie.

Może i komuś wyda się to głupie ale zastanawia mnie struktura projektu w Symfony 2.
Zaczalem dzisiaj zabawe z tym frameworkiem i nasuwa mi sie pytanie.

Czy kazdy modul np. Category mam robic jako osobny Bundle ? i tak analogicznie UsersBundle, PostBundle, ImageBundle ?

Czy w jednym Bundle zrobic wszystkie te moduly czyli zamknąć projekt w jednym bundle: DemoBundle/Controller/ i tutaj:

UserController.php, PostController.php, ImageController.php



Ogolnie pytanie tyczy sie tego czy projekt ma byc zrobiony jako jeden Bundle i tam cala struktura aplikacji ma sie zawierac czy poprostu Bundle odzwierciedla jeden modul w projekcie odpowiedzialny za konkretną rzecz.

Z góry dziękuję za pomoc i sugestie.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
peter13135
post
Post #2





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

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


Granica jest tutaj płynna. Jeśli robiłbyś forum dyskusyjne, to mógłbyś to rozbić na 2 bundle. np.
a)panel admina
b)panel użytkownika (tzn. wszystko to, do czego dostęp ma user, czyli wyświetlanie forów, postów, tematów, ostrzeżeń userów, edycja usera itp).

Jeśli jednak liczba kontrolerów w bundlu przekraczała by 20, warto by rozdzielić tego bundla na 2 bundle. Czyli punkt b, można by rozdzielić na dwa bundle typu:
1. Edycja uzyszkodnika (przypomnienie hasła, edycja hasła, upload avatara, rangi, grupy itp.)
2. Całą reszta jak wyświetlanie forów, tematów, postów.

Takie moduły jak shoutbox mogłby by być nawet oddzielnymi bundlami. Ułatwiało by to uzycie go w innym projekcie.

Wszystko o czym tu napisałem nie zostało przetestowane przeze mnie. O taki sam problem pytałem programistę z którym pracowałem i napisałem tutaj to, co on mi powiedział (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
netrat
post
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 2
Dołączył: 1.10.2012
Skąd: Łódź

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


Osobiście sugerowałbym podzielenie na bundle, dlatego że trochę łatwiej to się czyta i trochę łatwiej odnaleźć się w strukturze katalogów i wyszukać interesujący nas plik (zwłaszcza jeśli dojdziesz to robienia widoków). Poza tym wygląda to jakoś schludniej (IMG:style_emoticons/default/wink.gif)
Moja propozycja:
UserBundle
AdminBundle
FormBundle , czyli tak jak sugerował peter13135 tylko nie czekałbym aż liczba kontrolerów przekroczy 20 (IMG:style_emoticons/default/wink.gif)

Ten post edytował netrat 2.10.2012, 08:23:49
Go to the top of the page
+Quote Post
skowron-line
post
Post #4





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


Tak jak koledzy wyżej napisali z tym że jedna podpowiedz, grupuj pokrewne funkcjonalności
np
UserBundle
- obsluga usera
- obsluga grup usera
- obsluga logowania
- obsluga logów usera

i inne
Go to the top of the page
+Quote Post
bambam
post
Post #5





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 4.09.2011

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


Dziękuje za podpowiedź, mam jeszcze jedno pytanie.
Jak najlepiej tworzyc baze danych do projektu ? Niebardzo rozumiem tej ideologii "doctrinowskich entity"
Mam przygotowany widok bazy w Mysql Workbenchu, jak przelozyc to na Doctrina w najlepszy sposob ?
Wiem ze móglbym zrobic to klasycznie czyli tworzyć tabele za pomocą sql ale chciałbym zrozumiec jak robic to poprzez konsole + Entity files.
Właściwie interesuje mnie jak wy to robicie przy projektach ? i jaki jest najlepszy sposób na to jesli chodzi o SF2 : >

Go to the top of the page
+Quote Post
netrat
post
Post #6





Grupa: Zarejestrowani
Postów: 14
Pomógł: 2
Dołączył: 1.10.2012
Skąd: Łódź

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


Generalnie jest kilka możliwości
1) http://zechim.com/blog/2012/05/07/reverse-...ith-annotation/
2) https://github.com/johmue/mysql-workbench-schema-exporter
tak więc wybierz te które Tobie odpowiada. A czego nei rozumiesz w ideologii "doctrinowskich entity"?
Ot takie mapowanie tabelek na obiekty (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
bambam
post
Post #7





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 4.09.2011

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


jeszcze jedno pytanie, stworzyle msobie template rozdzielilem go na kilka plikow

i teraz kiedy ustawiam w routingu dla bundle

MindMindBundle_category:
pattern: /category
defaults: { _controller: MindMindBundle:Categories:index }


nie ma problemu z wyswietlaniem template.

jendkaze kiedy dodam slugi

MindMindBundle_category:
pattern: /category/{slug}/{slug}
defaults: { _controller: MindMindBundle:Categories:index }


zaczyanaja sie problemy, nie wyswietlaja sie obrazki , zauwazylem ze gdy zmienie sciezke dla obrazka czyli dodam ../../images/gif.png, wtedy sie wyswietli

kiedy jest dodany jeden slug wystarczy zmienic na ../images/gif.png, czyli analogicznie im wiecej dodam slugow tym wiecej musze dodac ../ do sciezki.

Dlaczego tak jest ?


z gory dziekuej za pomoc

Go to the top of the page
+Quote Post
netrat
post
Post #8





Grupa: Zarejestrowani
Postów: 14
Pomógł: 2
Dołączył: 1.10.2012
Skąd: Łódź

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


To już chyba nie do końca temat na to pytanie, ale spróbuj wstawić
<img src="/images/gif.png" />
czyli zacznij sobie od slasha i daj ściezkę bezwzględnie albo użyj assetsów np {{ asset('bundles/sferauser/images/empty_avatar.jpg') }}
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: 22.08.2025 - 14:48