Jako, że na uczelni wziąłem sobie do zrobienia projekt ala POS dla restauracji na RoR, to chciałbym poprosić o małą radę i spojrzenie na mój projekt z trzeciej osoby.
Obecnie mam kilka modeli skojarzonych ze sobą tj: Stoliki, Zamówienia, Obiekty zamówień, Produkty i Kategorie
Walczę teraz z ogarnięciem składania zamówień.
Od strony z layoutem sali (model i kontroler stolików) potrzebuje zrobić nowe zamówienie dla określonego stolika.
Na chwilę obecną mam na każdym generowanym z bazy stoliku formularz który wysyła do metody create kontrolera Zamówienia id stolika, tak aby mu go przypisać, następnie ajax ładuje mi do tworzonego okna index produktów które posiadam.
I tutaj się właśnie zaciąłem. mam już oprogramowane dodawanie produktów, ale nie wiem jak przekazać dane zamówienia do którego muszę to zrobić.
Nie proszę o pomoc w pisaniu kodu, tylko o świeże spojrzenie, bo może być tak, że brnę w swoją myśl ale jednak robię to źle.
W prawdzie wszystko jest w angielskim, tutaj napisałem po polsku, aby ułatwić zobrazowanie przykładu.
Absolutnie początkujący to może nie jestem i kilka ajaxowych formularzy już posiadam w środku.
Mam też pytanie, czy jest jakaś zależność między modelami, która w momencie usunięcia nadrzędnego wpisu zmieniała by wartość w kluczu zależnej ?
np. jeśli usunę kategorię to zmienić w produkcie category_id na nil ?
Czy ktoś jest mi w stanie pomóc z pierwszą rzeczą ? ogólnie nie mogę dojść do tego, jak przekazać stworzony obiekt w pierwszym formularzu do następnego… i oczywiście z racji że ma to być bez przeładowania strony to tu jest trudniej.
A nie możesz zrobić request’a z danymi do aplikacji, w odpowiedzi dostać jsona z obiektem i przekazać go do zmiennej, a dalej js’em otworzyć drugi formularz?
Trochę być może do końca nie kumam o co tutaj chodzi i w czym jest problem. Trochę niejasno to wszystko brzmi, ale gdybym sam robił takie oprogramowanie dla knajpki, to bym na początek zrobił coś w stylu Stolik -> Zamówienie -> Pozycje w menu.
Następnie zrobiłbym tak, że klikam w Stolik, tam otwieram formularz, który mi stworzy nowe zamówienie z pozycji z menu, ale to w przypadku gdy Stolik nie ma otwartego zamówienia. Gdy Stolik ma już otwarte zamówienie po prostu pozwalam edytować zamówienie i tyle w takim dość sporym uproszczeniu.
Nie wiem czym u Ciebie są Obiekt zamówienia, ale traktuje to jak pozycja z menu po prostu.
Żeby stworzyć pozycje w menu to zrobiłbym prosty formularz, w którym na wstępie wybieram Kategorie, np. Dania główne. Potem do tego dodaje nazwę i dopisuję produkty i tyle.
Tak może trochę chaotycznie opisane i może nie o to Ci chodziło, ale napisałem w skrócie jakbym to mniej więcej sobie na początku zaplanował do zrobienia.
Obiekt zamówienia dokładnie to Order_items pozwala mi na przypisywanie produktów do wielu zamówień. Zamiast wielkiej ilości produktów tworze z listy produktów Order_itemy do konkretnego zamówienia
Obecnie robie tak - klikając w solik tworzysz nowe zamówienia i przekierowanie na listę produktów (muszę ogarnąć jak wrzucić to w ajax, aby nie przeładowywać strony) i wtedy dodaje produkty do zamówienia.