Hej!
Gdy zapisać chcę mój obiekt wyskakuje mi błąd: param is missing or the value is empty: order
Zastanawiałem się: Hmm? ale przecież widzę, że przekazuje parametry… ale okazało się, że…
“/cars/reddragon/orders/new” dopiero to wskazuje na moje parametry, które chcę wyciągnać…
Mój routing do tego post’a
post 'cars/:car_id/orders/new(.:format)' => 'orders#create',
Teraz pytanie? Co możło pójść nie tak? Skąd ta ścieżka w przkazywaniu parametrów i jak jej się pozbyć? (reddragon to nazwa rejestracji auta). Nawet jeśli chciałbym zostawić to jak jest, to jak przechwycić tego JSON’a i wyciągnać mu to, czego potrzebuję?
Nie chcę tworzyć nowego tematu, więc zapytam się tutaj:
Jak sprawić, by button/submit tworzył dwa obiekty różnych klas?
A może inaczej:
Klasa Order ma wiele ServiceOperation
ServiceOperation ma wiele Order
łączą się dzieki OperationInOrder
W jaki sposób zbudować formularz, by składając Order, wybrać jedną, lub wiele ServiceOperation (których mam już listę), a zapisując tworzyć obiekt/y OperationInOrder, które łączą Order z wybranymi ServiceOperation?
Z tego co piszesz chodzi tobie o relację wiele do wielu. `W RoR jest coś takiego jak has_many (through): http://guides.rubyonrails.org/association_basics.html (rodział 2.4),jeśli OperationInOrder nie zawierałoby nic poza identyfikatorami to możesz użyć has_and_belongs_to_many (rozdział 2.6).
W formularzu generujesz listę obiektów przekazywaną jako order_ids lub service_operation_ids, w zależności czy obiekt ServiceOperation czy Order jest obiektem bazowym w formularzu.
Wiem, że może proszę o dużo, ale czy ktoś chce przerobić ten formularz tak, bym zrozumiał jak to ma wyglądać (ewentaulnie jak funckja new i create w kontrolerze ma wglądać).
Dobrze że oparłeś się pokusie zakładania nowego tematu dla odrębnego zagadnienia i podpiąłeś się do losowego istniejącego wątku, mamy ograniczoną pulę bazodanowych ID-ków w której musimy się zmieścić.