![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
2 tematy: 1) poleceniem
wygenerowałem projekt w SF2 z następującą strukturą katalogów: (IMG:http://naforum.zapodaj.net/thumbs/b35910330217.png) Adres: http://localhost/symfony/web/app_dev.php/homepage/ otwiera stronę główną na której znajduje się odnośnik do strony z ofertą. Strona główna korzysta z widoku bazowego symfony/app/Resources/views/base.html.twig strona z ofertami z widoku symfony/src/Acme/PageBundle/Resources/views/Default/offer.html.twig czy to jest poprawne rozwiązanie? Jeden widok w app, drugi w src. Czy takie rozwiązanie nie bedzie problematyczne docelowo gdy będę wrzucał projekt na zewnętrzny hosting? 2) Bundle domyślnie tworzy się w katalogu src są tam wszystkie pliki projektu, kontrolery, zdjęcia, style (widac na powyższym zdjęciu). Dlaczego tak jest skoro docelowo na serwerze folder public_http, to folder WEB z symfony. Przecież w katalogu web nie tworzy się projektu i wszystko jest w src ... Pytania co dla niektórych pewnie banalne, ale proszę weźcie pod uywagę to że jeszcze raczkuję w tym temacie. Ten post edytował kosmos 14.03.2015, 21:22:55 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 350 Pomógł: 31 Dołączył: 23.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
1)
Strona z ofertami to zwykły listing? Plik/szablon "base.html.twig" traktuj jak szablon/szkielet Twojej strony www. Ja bym proponował trzymać tam szkielet sekcji HEAD, ustawić render CSS+JS (itp) a sam widok (powiedzmy wygląd strony głównej) trzymać w oddzielnym pliku np. "front-layout.html.twig" (w lokalizacji np. app/Resources/views) i niech ten widok "front-layout" dziedziczy po "base.html.twig" - więc będziesz miał szkielet dokumentu + podstawowe elemnety np. DIV (z front-layout.html) i na końcu dokładasz treść dynamiczną (np. środek) z widoku danego bundla (np. symfony/src/Acme/PageBundle/Resources/views/Default/offer.html.twig) Czyli w konsekwencji masz trzy pliki, które będą Ci renderować widok: 1) app/Resources/views/base.html.twig - szkielet dokumentu (później go wykorzystasz np. w panelu admina, aby nie dubolować ciągle tagów HEAD) 2) app/Resources/views/front-layout.html.twig - wygląd strony głównej (podstawowe divy, które wiesz, że będą pojawiać się na każdej podstronie) 3) [dynamiczny widok zależny od danej akcji] 2) Pliki aplikacji (mówię tutaj np. o kontrolerach, innych klasach) możesz trzymać poza katalogiem gdzie domena jest kierowana. Symfony najzwyczajniej wczytuje zasoby z katalogu "niżej". Wspomniałeś także o CSS/JS/IMG - według standardu powinieneś "przepisać" te zasoby do katalogu "web" - one wówczas "przetransferują" się z danego bundle do katalogu "web" i będą one ogólnodostępne. Spójrz na fragmenty tego artykułu: http://symfony.com/doc/current/cookbook/as...rod-environment |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 04:57 |