Wir machen eine Ruby On Rails Webapp, wo jeder Kunde seine eigene Datenbank bekommt.
Die Datenbank muss erstellt werden, nachdem sie ein Formular auf unserer Website ausgefüllt haben.
Wir haben eine Vorlagen-Datenbank, die alle Tabellen und Spalten enthält, die wir kopieren müssen. Wie kann ich dies programmatisch von Ruby on Rails aus machen?
Mit yaml_db
Sie müssen das Plugin installieren, eine Rails-Datenbank (einschließlich mysql) in der Datei data.yml mit Rake-Task ablegen, die Verbindungszeichenfolge ändern, um auf eine neue Datenbank zu zeigen und dann data.yml in eine neue Datenbank (einschließlich mysql) laden eine weitere Rechenaufgabe. Sehr einfach.
Sie könnten Ihren Template-Schema-Erstellungscode in ein Skript schreiben, das alle erforderlichen Tabellen- / Index- / View- / Prozedurerstellungsanweisungen enthält, nennen Sie es "template_schema.sql" oder was auch immer, und führen Sie das Skript dann einfach in der Datenbank Ihrer aus Wahl (aus Ruby, wenn du das willst) und du bist fertig.
Der beste Ansatz besteht wahrscheinlich darin, jedes Datenbankobjekt in einer separaten Datei unter Versionskontrolle zu haben (um die Verfolgung von Änderungen an einzelnen Objekten zu erleichtern) und diese dann als Teil der Bereitstellung in eine einzelne Datei zusammenführen zu lassen.
>Tags und Links ruby mysql database ruby-on-rails