Ich baue eine E-Commerce-App auf die harte Tour (kein Spree, Shoppe, etc), damit ich Schienen lernen kann. Derzeit habe ich ein Restaurant Modell, Mahlzeiten Modell, und Bestellungen Modell. Benutzer (die Geräte verwenden) können Mahlzeiten öffnen, ein Bestellformular mit einem Attribut ausfüllen: Quantität und die Bestellung an ihren Einkaufswagen senden (behalten: restaurant_id, meal_id,: qty). Mahlzeiten in Restaurants haben jedoch normalerweise Größen und Ergänzungen (mit Käse, mit Ketchup usw.). Im Idealfall würde ich so etwas wie spree_flexi_variants bauen, aber ich kann einfach nicht sehen, wie das geht ... Sollte ich "Eigenschaften" und "Ergänzungen" verschachteln (2 Ebenen tief wie Mahlzeiten ist derzeit verschachtelt in Restaurant) in den Mahlzeiten, oder fügen Sie irgendwie eine Eigenschaft zum Mahlzeitenmodell hinzu? Vielen Dank für Anregungen!Schienen, Produktvarianten
1
A
Antwort
1
Ich gehe davon aus, dass Ihr Essen Objekt die Ergänzungen als Kind Artikel hat, in diesem Fall die Bestellung wird auch brauchen Kind Artikel, in diesem Fall würden sie eine Verbindung zwischen Ergänzungen und Bestellung sein.
Sie müssen es nicht so machen, es ist nur ein möglicher Ansatz. Sie könnten die ausgewählten Ergänzungen stattdessen als serialisierten Hash in der Bestellzeile speichern.
Wenn dies ein Projekt zum Lernen ist, würde ich beides versuchen und sehen, was sich am nettesten anfühlt - es ist alles nützliche Übung!
Verwandte Themen
- 1. Iterieren durch Produktvarianten
- 2. Wie WooCommerce Produktvarianten Titel
- 3. Entfernen der Seitennummerierung aus Woocommerce-Produktvarianten
- 4. Spork-Schienen in Schienen 5
- 5. Schienen - benötigt Aktionskabel Schienen 5?
- 6. haml-Schienen auf Schienen 4.0?
- 7. Wie Schienen Schienen Ansichtspfade in Schienen vorstellen 3.2 (ActionView :: PathSet)
- 8. Schienen rbenv: Schienen: Befehl nicht gefunden
- 9. Schienen s oder Bündel exec Schienen s
- 10. Schienen application.html.erb?
- 11. Schienen nach_commit?
- 12. Schienen - Ereignisregistrierungsformular
- 13. Schienen: Feldnamen
- 14. Schienen: attribute_changed?
- 15. Schienen Sitzungsmodell
- 16. Schienen, Kontrollkästchen
- 17. Schienen - Rakefile
- 18. Schienen Speicherauslastung
- 19. Schienen Funktionstest
- 20. Schienen map_with_index?
- 21. Schräge Schienen Fehler „Zugriff verweigert: bin/Schienen“ für alte Schienen apps
- 22. Schienen c nicht mit der gleichen Datenbank wie Schienen db
- 23. nProgress-Schienen mit turbolinks arbeiten nicht in Schienen 4.2.6
- 24. hebeln-Schienen nicht Schienen Konsole mit Rails 4.0
- 25. Hinzufügen von twitter-Bootstrap-Schienen mit einer vorhandenen Schienen-App
- 26. Brauche ich Kaffee-Schienen, Sass-Schienen, etc. in der Produktion?
- 27. Rails Routen Syntax - von Schienen 2 bis Schienen 3
- 28. Ich kann nicht Mauerwerk-Schienen gem in meinen Schienen-app
- 29. Wie kann ich zwischen Schienen 3.2.13 und Schienen 4.0.0 wechseln?
- 30. Railties ausführbare „Schienen“ Konflikte mit/usr/bin/Schienen
Ich werde den Ansatz mit einem Attribut versuchen: Ergänzungen im Essensmodell, das alle aktuellen Optionen + Preis für jede Option speichert. Vielen Dank :) –