2010-07-18 18 views
4

Je me demandais si quelqu'un savait comment mettre à jour les fichiers (ajouter/supprimer/mettre à jour un attribut) produit en utilisant le générateur d'échafaudage en ruby ​​sur rails.échafaudages et mise à jour des attributs manuellement dans ruby ​​on rails howto?

Par exemple:

nom de l'étudiant d'échafaudage: string Nom: string

donc cela va créer un des fichiers associés (contrôleur, vue, etc.) avec le nom et les attributs comme nom de chaîne. Lorsque vous db: migrez le projet, il crée la table dans la base de données. Cependant, disons que je veux mettre à jour s'il faut le mettre à jour avec une addition attribue (ex: studenId: integer) ou si c'est enlever ou mettre à jour un attribut, comment faites-vous cela?

Je fatiguais juste de mettre à jour les fichiers générés, mais quand je fais cela, db: migrer définit toujours le schéma qui est généré à ce qui est dans la table. Y a-t-il un script intégré dans les rails qui mettra à jour la table?

Un conseil apprécié? Merci, D

Répondre

1

Vous avez besoin nouveau fichier de migration pour les nouveaux attributs, de la console:

$ script/gnerate migration add_sudentid_to_sudent 

il va générer your_app/db/migrate/8293898391_add_sudentid_to_sudent.rb, spicify dans ce fichier vos nouveaux attributs:

def self.up 
    add_column :sudents, :studentId, :integer 
end 

def self.down 
remove_column :students, :studentsId 
end 

après, retour à la console:

$ rake db:migrate 

et que vous pouvez modifier votre point de vue, le modèle, les fichiers de contrôleur et d'utiliser un nouvel attribut

1

Salut Essayez ruby script/destroy scaffold student puis ruby script/generate scaffold student

2

commande complète dans cet exemple:

$ rails generate migration add_studentid_to_student