2010-12-09 18 views

Répondre

2

Les variables sont dans le cadre de l'instance de coupe qui a été commencé. Donc, ils seraient dans la portée d'autres tâches si plusieurs tâches ont été démarrées à la fois.

Par exemple

rake db:seed custom:sometask 

Les variables d'instance définies dans db: graines pourrait être accessible dans « sometask »

Si le fichier de coupe est trop grand en raison de l'ajout de trop d'enregistrements, vous pouvez déplacer les données Cela doit être inséré dans un fichier yaml, ce qui pourrait rendre votre fichier de graines plus propre, plutôt que de créer une classe.

1

Les données de base sont tout ce qui doit être chargé pour qu'une application fonctionne correctement. Une application a besoin de ses données de base chargées pour être exécutées en développement, test et production.

Les données de graine sont pour la plupart immuables. Il ne sera généralement pas modifié dans votre application. Mais les exigences peuvent changer et changent, de sorte que les données de base peuvent devoir être rechargées sur les applications déployées.

réponse à votre deuxième question

lignes de code dans seed.rb n'affecte pas la performance la tâche de base de graines est d'initialiser la base de données avec des enregistrements prédéfinis. Gardez une chose en tête que la création du parent est faite avant que l'enfant ne soit créé.

Voici quelques références qui pourraient vous aider

ASCIICasts

Rail Spikes