6
votes

Rails Migrations: Chargez les données par défaut

meilleure façon de charger des données de semences? J'ai une table d'auteur qui est étroitement couplée à une table des utilisateurs. J'ai aussi des migrations pour modifier les deux tables. Je souhaite ajouter un utilisateur d'administrateur par défaut, mais je veux vous assurer que les deux tables sont créées et que toutes les migrations sont exécutées pour ces tables avant que ma migration de créationFaulleLadmin (ou autre) est exécutée. Y a-t-il des meilleures pratiques pour faire cela? Désolé si cela était déjà demandé.


0 commentaires

4 Réponses :


0
votes

Vous ne pouvez pas simplement créer des migrations séparées et les exécuter séparément


0 commentaires

2
votes

La dernière version (Edge?) des rails comprend un fichier dB / graines.rb dans lequel vous pouvez placer du code pour créer des enregistrements dans votre base de données. Jusque-là, les migrations sont la voie à suivre, mais elles peuvent être en désordre lorsque le schéma continue de changer (ce qui est le point entier des fichiers de migration).


0 commentaires

11
votes

Vos options:

  1. Utilisez des migrations telles que décrites ici: http://railpikes.com/2008/ 2/1 / Chargement-Seed-Data
  2. Utilisez une addon 3ème partie comme: Seed-Fu ou DB-peupler
  3. Utilisez des appareils, qui sont décrits dans l'article Rails Spike.
  4. Attendez les rails 3 et utilisez les nouvelles graines.rb: http://github.com/ Rails / Rails / commit / 4932F7B38F7210481902ABCA0C952BA6F9888CB

    Personnellement, j'utilise un YAML-DB . J'aime construire toutes mes données de semences dans mon environnement de développement et le garder sauvegardé dans mon référentiel, lorsque je vais vivre, je peux le charger avec une tâche de râteau.


0 commentaires

0
votes

Essayez une fille d'usine comme remplacement de luminaires pour les modèles bien couplés:

http://www.thathatbot.com/projects/factory_girl


0 commentaires