2011-01-16 11 views
2

Ich frage mich, ob die Arbeit mit Rails (3) eine gute Idee ist, wenn eine riesige/hässliche Legacy-Datenbank bereits vorhanden ist (Oracle, SQLServer).Rails3 und Legacy-Datenbank

Ich habe nur Erfahrung mit ActiveRecord, gibt es ein anderes ORM besser geeignet für diese Art von Job?

Prost

Antwort

2

Active noch die Arbeit machen können - zum Beispiel gibt es Richtlinien, die in Ihrem Modell, das nicht-konventionellen Tabellennamen machen, Primärschlüsselnamen (mehrspaltigen PKs angewendet werden können, wenn Sie sie haben, verwendet, um einige zusätzliche Arbeit zu erfordern, nicht sicher, wie wahr das in AR3 ist).

Für beide Oracle und SQL Server müssen Sie die relevanten DB-Adapter erhalten; Ich denke nicht, dass beides mit AR gebündelt ist.

Viele Legacy DB Rails arbeiten nur mit Lesezugriff - wenn das der Fall ist - und Sie erhalten Zugriff darauf - dann können Sie feststellen, dass Ansichten, die mehr "AR-freundlich" sind, diese referenzieren durch Ihre Modelle können das Leben leichter machen. Wenn ein Update erforderlich ist, wird entweder ein verwendbarer Primärschlüssel benötigt, oder Sie müssen in Erwägung ziehen, benutzerdefiniertes SQL zu erstellen und auszuführen, was in AR vollständig unterstützt wird, wenn die Abstraktionen nicht in der Lage sind.