创建关联后,有哪些方法可用?

时间:2009-03-02 20:00:04

标签: ruby-on-rails

我刚刚开始使用RoR,所以我确信这是非常基本的。假设我有两个模型:帐户和交易

class Account < ActiveRecord::Base
    has_many :transactions
end

class Transaction < ActiveRecord::Base
    belongs_to :account
end

在进行此关联后,有哪些方法(对于每个模型)可用/自动生成?

由于

3 个答案:

答案 0 :(得分:1)

这取决于。一些方法(例如,帐号#交易,交易#帐户)将从一开始就存在。其他人将根据需要(通过method_missing挂钩)创建,例如动态查找器。确切的列表可能取决于其他因素,包括其他地方使用的act_as等。

您是否关注创建哪些内容或完全可能性是什么?

- MarkusQ

P.S。请点击此处了解更多信息:

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

答案 1 :(得分:1)

从rails应用程序的根目录运行脚本/控制台,然后您可以探索所有这些神奇的模型方法:

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

您将获得该对象的所有方法的长列表,包括生成的方法。 列出的所有方法都没有换行符 - 并且使用100多种方法可能难以阅读。 您可以在主目录中使用.irbrc文件和一些自定义方法来格式化irb中的输出,以便更容易阅读。

答案 2 :(得分:0)

继续使用inkdeep的答案:您可以在视图中输出这样的内容,使其格式化:

@ transaction.methods.each do | method |   方法+“
” 端

我正在使用HAML,因此语法略有不同,但只需查看“do”

相关问题