2009-07-24 10 views
0

râteau 0.8.7, rails/activerecord 2.3.3Pourquoi ne pas ratisser db: migrer le numéro de version du rapport?

sortie de rake db: migrate:

== CreateProducts: migration ================= ==================================== - create_table (: products) -> 0.0017s == CréerProduits: migré (0.0019s) =====================================

Shouldn 't le numéro de version, dans ce cas 20090724013528, apparaît avant le nom de la migration?

+0

Pour préciser davantage, la sortie du rake db: migrate montré dans le développement Agile Web avec Rails, troisième édition inclut le numéro de version: == 20080601000001 CreateProducts: migrante ======== ================ - create_table (: produits) -> 0.0027s == 20080601000001 CreateProducts: migrée (0.0028s) ========== ===== J'essaie juste de comprendre si la sortie de la commande a changé ou s'il y a un autre problème. –

Répondre

4

Je ne me souviens pas de 100% mais je pense qu'ils ont supprimé le numéro dans cette sortie lorsqu'ils basculent les migrations vers les horodatages UTC.

Vous pouvez cependant vérifier la version actuelle de votre DB en utilisant:

rake db:version 
+0

Basé sur la sortie montrée dans le livre que j'ai mentionné dans la question mise à jour, le numéro de version a été inclus à un certain point. En regardant le code de la méthode announce qui génère la sortie, il semble que la variable @version contienne un blanc plutôt que le numéro de version. –

1

Comme pointed out by paulsnotes, l'horodatage représente le numéro de version. Si vous voulez vraiment revenir aux numéros séquentiels, vous pouvez définir un drapeau dans environment.rb.

config.active_record.timestamped_migrations = false 
+0

Merci, mais je ne veux pas revenir aux numéros séquentiels. –