2009-03-02 14 views
1

私はちょうどRoRとローリングしているので、これはかなり基本的だと確信しています。アカウントと取引の2つのモデルがあるとします。アソシエーションを作成したら、どのような方法が利用できるようになりますか?

class Account < ActiveRecord::Base 
    has_many :transactions 
end 

class Transaction < ActiveRecord::Base 
    belongs_to :account 
end 

この関連付けを行った後、どの方法が使用可能になるか自動生成されますか?

ありがとうございました

答えて

1

です。いくつかの方法(アカウント#トランザクション、取引#アカウントなど)は、そこから得られます。その他のものは、動的finderなど、必要に応じて(method_missingフックを使用して)作成されます。正確なリストは、acts_asなど、他の場所で使用されるものなど、他の要素に依存する可能性があります。

どのようなものが作成されているのか、完全な可能性について懸念していますか?

- MarkusQ

P.S.あなたのレールのアプリのルートから実行スクリプト/コンソールに

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

+0

「を行う」見上げます。私は今非常に基本的なレベルにいるので、深刻になるとおそらく私の進歩を妨げるでしょう。 –

+0

リンク先のリストを見て、あなたが望むより深くなるまでページを読んで、止めてください。 – MarkusQ

+0

ところで#は何ですか? –

1

、その後、あなたはこのような魔法のモデルのメソッドのすべてを探索することができます:より多くのためにここを参照してください

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

あなたが買ってあげます生成されたメソッドを含むオブジェクトのすべてのメソッドの長いリスト。 すべてのメソッドは改行なしでリストされ、100以上のメソッドでは読みにくい場合があります。 ホームディレクトリに.irbrcファイルを使用して、いくつかのカスタムメソッドを使用して、出力をirbでフォーマットして読みやすくすることができます。

0

inkdeepの答えに行く:あなたがすることができ、このような出力に何かをあなたのビューでは、フォーマットされていますので:

transaction.methods.each @行う|メソッド|私はHAMLを使用してい 方法+「
」 終了

ので、構文は少し異なりますが、私はちょうど思いついたものを参照するには、単純な足場を修正して働いていた

関連する問題