Welches ORM wird am besten mit einer neuen Rails 3-App für eine ältere MySQL 5.1-Datenbank verwendet? Ich erwarte nicht, jemals eine Migration gegen diese Datenbank durchzuführen (obwohl sich das Schema von Zeit zu Zeit ändern kann), aber ich werde sicherlich daran schreiben.Rails 3: ActiveRecord vs. DataMapper (vs. ???) für ältere MySQL-Datenbanken
Antwort
Ich bin vielleicht voreingenommen gegenüber DataMapper, aber ich denke, DM ist im Allgemeinen eine gute Option für die Integration in ältere Datenbanken.
DM ermöglicht es Ihnen sinnvolle Modell und Eigenschaftsnamen zu kryptischen Vermächtnis Tabellen- und Spaltennamenskonventionen abzubilden. Sie können dies entweder auf einem pro Modell/Eigentum oder einer App breiten Basis tun.
DM unterstützt faule Eigenschaften, die nur beim tatsächlichen Zugriff abgerufen werden.
DM unterstützt nahtlos zusammengesetzte Primärschlüssel.
DM kümmert sich nur um die Eigenschaften (Spalten), die Sie explizit in Ihren Modellen deklarieren. Andere Spalten werden niemals berührt oder gelesen.
DM funktioniert gut mit Fremdschlüssel Einschränkungen in Ihrer Datenbank und mit Hilfe von dm-constraints unterstützt es auch die Erstellung von ihnen.
Es gibt einige Dokumentation auf http://datamapper.org/docs/legacy auch.
Es gibt auch die dm-types-legacy-Bibliothek (https://github.com/postmodern/dm-types-legacy), die gängige DM-Typen für die Zuordnung in seltsam formatierten Daten (Numerische IP-Adressen, HTML/URI) bietet kodierter Text, Datums-/Uhrzeitzeichenfolgen).
Funktioniert das mit datetime_select? Ich versuche beispielsweise, ein Datetime-Feld zu aktualisieren, und es schlägt daher fehl: "published_at (1i)" => "2010", "published_at (2i)" => "11", "published_at (3i)" => "14", "published_at (4i)" => "07", "published_at (5i)" => "59" –
- 1. Warum verwendet DataMapper Mixins vs Vererbung?
- 2. Rails 3 Suche: Searchlogic vs Thinking_Sphinx
- 3. Schreiben von Treibern für ActiveRecord (Rails 3)
- 4. Rails 3 (Ruby 1.9.2 vs 1.8.6) und (MRI vs REE vs JVM) - Kommentare/Vorschläge?
- 5. Marshalling vs ActiveRecord Serialisierung in Ruby On Rails
- 6. VS 2008 - Link gegen ältere C-Laufzeit
- 7. Angular2 vs Rails Api vs Facebook Auth
- 8. link_to vs url_for vs Pfad in Rails
- 9. Rails Fixtures vs Samen
- 10. Rails 3 ActiveRecord Validierung basierend auf Benutzerberechtigungen
- 11. Rails: Act_as_tagable_on vs Rocket_tag
- 12. Rails Fixtures vs. Mocks
- 13. Rails 5 Beta 3 ActiveRecord Datensatz ungültig
- 14. Rails: Validierung in Modell vs Migration
- 15. jquery 1 vs jquery 3 Legacy-Browser
- 16. Sortieren von ActiveRecord-Objekten in Rails 3
- 17. Rails 3: Handle ActiveRecord :: RecordNotUnique Ausnahme
- 18. Rails 3 enthält Übersetzungen globalize3 activerecord
- 19. Rails 3: Wie "ActiveRecord :: Relation" Elemente filtern?
- 20. Was ist der Rails 3 Ersatz für ActiveRecord :: Errors?
- 21. Rails Active Rekord: Karte vs Zupfen vs as_json
- 22. Core Data vs SQLite 3
- 23. Unterschiede ORM/DAO/DataMapper/ActiveRecord/TableGateway?
- 24. Kontrollkästchen in Rails 1 vs. Rails 2
- 25. Actionscript 3 Importpaket. * Vs Importpaket.Klasse
- 26. erlang: START_TIMER/3 vs Timer: send_after/3
- 27. Ubuntu vs FreeBSD und Rails
- 28. Rails: cache.fetch vs cache.read/write
- 29. Rails Counter Cache vs Berechnung
- 30. mmap (2) vs mmap (3)
Können Sie ein wenig vom Schema teilen? – rwilliams
Entschuldigung, es ist das geistige Eigentum eines Kunden, also kann ich es nicht teilen. –