Se utilizzo Ruby Migrations, devo usare il resto di Ruby on Rails?

1

Attualmente sto cercando di elaborare una strategia di migrazione dei database per la mia organizzazione. Ciò include il recupero degli script del database nel controllo del codice sorgente, la gestione delle versioni, la gestione delle versioni per il controllo qualità / produzione, la gestione delle diramazioni e l'unione tra i vari rami di rilascio, ecc.

Ruby Migrations sembra offrire soluzioni a molti di questi problemi. Tuttavia, osservando i documenti di Ruby on Rails, non è chiaro se le Migrazioni di Ruby possano essere separate dal resto del framework. Lavoro in un negozio prevalentemente .NET, ma con molte altre tecnologie e con più piattaforme DBMS (SQL Server, Oracle di varie versioni). Ruby non è presente nel nostro portafoglio in questo momento e non abbiamo intenzione di usarlo. Se dovessi usare Ruby Migrations, sarebbe l'unico pezzo del framework Ruby on Rails che vorremmo usare.

È possibile utilizzare efficacemente Ruby Migrations per gestire le modifiche al database indipendentemente dal resto del framework Ruby on Rails? Ci sono documenti o articoli là fuori che descrivono questo flusso di lavoro?

(Sì, so che ci sono altre opzioni come Liquibase, ma sto cercando in particolare di imparare su Ruby Migrations con questa domanda.)

    
posta RationalGeek 21.06.2012 - 16:09
fonte

4 risposte

4

Le migrazioni di Ruby on Rails sono attivate tramite attività di rake, come rake db:migrate , rake db:reset e così via. Vedi un elenco completo con rake -T . Non sei obbligato ad avviare mai il server Rails. Quindi la risposta alla tua domanda è chiaramente sì.

    
risposta data 21.06.2012 - 17:26
fonte
2

Ruby on Rails è progettato per essere usato come un grande insieme, quindi separare una parte di esso tende a essere più lavoro di quanto valga.

Una libreria alternativa è Datamapper, che ha un modulo migrazioni autonomo

.     
risposta data 21.06.2012 - 16:11
fonte
1

Mi piace Sequel molto.

Sequel supporta anche le migrazioni

Mi piace Sequel, perché usato come SQL, non devi usarlo come ORM, puoi usarlo molto facilmente come interfaccia per un DB. A volte uso Sequel solo per generare comandi SQL.

Specialmente con DB legacy, preferisco Sequel.

    
risposta data 21.06.2012 - 20:47
fonte
0

Se lo desideri, puoi utilizzare il framework delle migrazioni in un progetto non Rails. Lo uso in un progetto Rails che utilizza Sequel anziché ActiveRecord come soluzione ORM, ma continuiamo a utilizzare le migrazioni ActiveRecord per far evolvere il nostro schema di database. Conosco almeno due progetti che ti consentono di farlo:

link (compatibile con ActiveRecord 4 e versioni successive) link (compatibile con ActiveRecord 3.2)

    
risposta data 10.03.2014 - 22:00
fonte

Leggi altre domande sui tag