2009-09-13 4 views
0

Je suis conscient que je peux vérifier un ActiveRecord à travers la console de rails mais il montre la sortie entière dans une ligne. Cela peut être un problème pour rechercher un attribut spécifique si la table a plusieurs colonnes.Dans Rails, existe-t-il un moyen facile de vérifier les attributs d'un ActiveRecord?

>> Story 
=> Story(id: integer, name: string, link: string, created_at: datetime, updated_at: datetime) 

J'aime la façon dont les attributs sont affichés dans les créer des fichiers de migration, mais si j'ai beaucoup de fichiers de migration, il est peut-être un peu difficile à suivre celui que je veux.

Dans Django, je peux aller directement au models.py et vérifier les attributs pour tous les modèles que je veux. Comment les développeurs de Rails font-ils ce type de recherche?

Répondre

3

config/schema.rb a le schéma db, et en d'autres termes tous les attributs. Je viens d'ouvrir le fichier et de rechercher des "posts" pour un modèle Post, et ainsi de suite.

0

Je ne fais que décrire la table à partir du shell de base de données.

2

Une autre façon d'y parvenir est d'utiliser le plugin/gem annotate_models. Il ajoutera un commentaire au début de vos fichiers de modèle.

Un exemple (du README):

Schema as of Sun Feb 26 21:58:32 CST 2006 (schema version 7) 
    # 
    # id     :integer(11) not null 
    # quantity   :integer(11) 
    # product_id   :integer(11) 
    # unit_price   :float   
    # order_id   :integer(11) 
    # 
0

partir de la console de rails (rails/console à partir de la racine du projet)

Story.columns_hash.each {|k,v| puts "#{k} => #{v.type}"} 

qui va afficher:

id => integer 
name => string 
link => string 
... 
etc 
Questions connexes