2009-03-02 8 views
1

Je commence juste à rouler avec RoR donc je suis sûr que c'est assez basique. Disons que j'ai deux modèles: compte et TransactionQuelles méthodes deviennent disponibles après la création d'une association?

class Account < ActiveRecord::Base 
    has_many :transactions 
end 

class Transaction < ActiveRecord::Base 
    belongs_to :account 
end 

Quelles sont les méthodes (pour chaque modèle) sont disponibles/sont généré automatiquement après que je fais cette association?

Merci

Répondre

1

Cela dépend. Certaines méthodes (par exemple, les transactions de numéro de compte, de compte de transaction) seront disponibles dès le départ. D'autres seront créés en fonction des besoins (via un hook method_missing) tels que les finders dynamiques. La liste exacte peut dépendre d'autres facteurs, y compris des choses comme acts_as, etc. utilisées ailleurs.

Etes-vous préoccupé par ceux qui sont créés ou sur ce que sont les possibilités complètes?

- MarkusQ

P.S. Voir ici pour plus:

http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html

+0

Je viens de travailler avec la modification de l'échafaudage simple pour voir ce qui est venu. Je suis au niveau très basique en ce moment, donc aller plus loin entravera probablement mes progrès. –

+0

Il suffit donc de regarder la liste à laquelle je suis relié, de lire la page jusqu'à ce qu'elle soit plus profonde que vous le souhaitez et de vous arrêter. – MarkusQ

+0

Quel est le # au fait? –

1

Exécuter le script/console à partir de la racine de votre application Rails et vous pouvez explorer toutes les méthodes de modèle magiques comme celui-ci:

> account = Account.new 
> account.methods 
> ...[long list of methods]... 
> transaction = Transaction.new 
> transaction.methods 
> ...[long list of methods]... 

Vous obtiendrez une longue liste de toutes les méthodes pour l'objet, y compris celles générées. Toutes les méthodes seront listées sans sauts de ligne - et avec plus de 100 méthodes, il peut être difficile à lire. Vous pouvez utiliser un fichier .irbrc dans votre répertoire personnel avec des méthodes personnalisées pour formater la sortie dans irb afin de faciliter la lecture.

0

aller sur la réponse de inkdeep: vous pouvez afficher quelque chose de ce genre dans votre point de vue il est formaté:

@ transaction.methods.each faire | méthode | méthode + «
» fin

J'utilise HAML si la syntaxe est un peu différent, mais il suffit de regarder jusqu'à « faire »

Questions connexes