Wpis z mikrobloga

Witajcie mirki.

Tworzę w pracy stronkę, gdzie ma być sklep elektroniczny. Napisałem sobie serwis, gdzie tworzę zamówienie, dodaję produkty do zamówienia, pobieram informację o zamówieniu, cenę itd.
Jednak z powodu braku doświadczenia nie robię tego w odpowiedni sposób. W poprzedniej pracy widziałem jak takie coś było zrobione przez doświadczoną osobę i to mniej więcej wyglądało tak:
$this->getOrder()->getPrice() - aby pobrać cenę.
$this->getOrder()->getStatus() - aby pobrać status zamówienia.
U mnie to raczej wygląda tak, że pobieram serwis przy pomocy

$service = $this->get('app.order');
następnie wywołuję metodę:

$service->getPrice();
Nie wiem czy moje rozwiązanie jest w porządku, czy jednak pasowałby ten wariant, który podałem na początku. W pracy nie bardzo mam się kogo poradzić, a samemu brakuje mi doświadczenia z programowaniem obiektowym, więc pytam na mirko. Nie proszę o napisanie za mnie kodu, a tylko wskazanie jak ma wyglądać struktura takiego serwisu. Może to być nawet link do tutoriala.
Załączam swój kod w serwisie: https://gist.github.com/miedzwin/f7dbd4ee0cc4abfd37cb79d23ba4ab8e

#php #webdev #programowanieobiektowe #symfony2
  • 21
  • Odpowiedz
@DanioPL: wcale nie musi, jeśli
$this->orderItems jest ArrayCollection i ma odpowiednio zrobione mappingi i będzie korzystał z:

$order->addOrderItem($orderItem)

to nie musi robić $orderItem->setOrder bo doctrine podczas zapisywania $order sam sobie to ogarnie
  • Odpowiedz