Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Symfony] Koszyk w sklepie
stirith
post 6.09.2009, 14:27:35
Post #1





Grupa: Zarejestrowani
Postów: 162
Pomógł: 2
Dołączył: 18.01.2008

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


Uczę się symfony i postanowiłem się trochę pobawić przy skrypcie sklepu internetowego. Natknąłem się na problem z "koszykiem". Nie wiem dokładnie jak się za to zabrać. Czy do przechowywania informacji o dodanych produktach użyć sesji ? Czy wstawiać te info do bazy ?

Jak to rozwiązać ?
Go to the top of the page
+Quote Post
Crozin
post 6.09.2009, 14:33:05
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Jest przynajmniej jeden plugin koszyka dla sklepu - zobacz jak tam to zostało rozwiązane - jakich narzędzi użyto.
Go to the top of the page
+Quote Post
stirith
post 6.09.2009, 17:43:38
Post #3





Grupa: Zarejestrowani
Postów: 162
Pomógł: 2
Dołączył: 18.01.2008

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


Znalazłem smile.gif

Przeanalizowałem kod i mniej więcej wiem jak to zrobić, teraz moje pytanie brzmi: Tam to jest w formie biblioteki...gdzie ja w swojej aplikacji mam napisać metody (dodające do koszyka, usuwające...) Mam zrobić moduł "koszyk" a w actions punkcje add, remove etc ?
Go to the top of the page
+Quote Post
Crozin
post 6.09.2009, 18:48:34
Post #4





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Nie korzystałem z tego nigdy (tylko skojarzyłem, że takie coś w ogóle istnieje) ale jeżeli jest to standardowy plugin to znajduje się tam foldery odwzorowujące strukturę projektu. Generalnie symfony jest elastyczne pod względem lokalizacji klas. Przykładowo formularz może być w /lib/form, /apps/.../lib/form, apps/.../modules/.../lib/form, /plugins/.../lib/form. W modułach pluginu. Prawdę mówiąc to może być właściwie wszędzie (zależy to właściwie jedynie od ostawień Autoloadera).

Klasy przechowuj w miejscach o jak najbardziej "precyzyjnym położeniu", tj. jeżeli masz jakiś formularz z walidatorem, który jest specyficzny wyłącznie dla modułu ABC to umieść źródła w /apps/.../module/lib/form (oraz .../validator).

Co do metod dodających/usuwających z koszyka to ich miejsce jest w modelu.

Ten post edytował Crozin 6.09.2009, 18:48:51
Go to the top of the page
+Quote Post
krowal
post 6.09.2009, 19:52:06
Post #5





Grupa: Zarejestrowani
Postów: 561
Pomógł: 72
Dołączył: 15.11.2006

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


Tak jak Crozin powiedział, ich miejsce jest w modelu, dodatkowo do każdej czynności tj. usuwanie, dodawanie produktu do koszyka powinieneś sobie napisać oddzielną akcję która wywoła odpowiednią metodę z tego modelu koszyka. Akcje mogą być bez widoku i po wykonaniu kierować użytkownika z powrotem do punktu z którego użytkownik ją wywołał, lub też wywoływać je via AJAX.

Ten post edytował krowal 6.09.2009, 19:52:38


--------------------
Nawet świnka może wejść na drzewo kiedy jest chwalona :)
Go to the top of the page
+Quote Post
Gribo
post 7.09.2009, 20:54:56
Post #6





Grupa: Zarejestrowani
Postów: 237
Pomógł: 17
Dołączył: 1.11.2007
Skąd: Zielona Góra

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


sam ostatnio implementowałem coś podobnego do koszyka mianowicie schowek na linki. W symfony to jest jakies 20 lini kodu i wszytsko jest gotowe z wykorzystaniem ajaxa. Bardzo pomocny jest tutorial na stronie projektu Symfony mianowicie
http://www.symfony-project.org/book/1_2/11-Ajax-Integration


--------------------
Wyszukiwarka noclegów w Polsce i zagranicą.
Najlepszy katalog turystyczny wspomagający pozycjonowanie i promocje stron.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.07.2025 - 21:17