如何在模型中获取将返回特定模型的值的方法。通过提供我的模型获取一个属性编号
的代码是有跟随
示范公约第
def article_title(id)
art = Article.find_by_id(id)
return art.title
end
的观点是遵循
<% arttitle = Article.article_title(id) %>
这并不工作,但我不知道什么样的方式来做到这一点
如何在模型中获取将返回特定模型的值的方法。通过提供我的模型获取一个属性编号
的代码是有跟随
示范公约第
def article_title(id)
art = Article.find_by_id(id)
return art.title
end
的观点是遵循
<% arttitle = Article.article_title(id) %>
这并不工作,但我不知道什么样的方式来做到这一点
该方法应该定义为一个类方法,其中self
关键字
def self.article_title(id)
Article.find(id).title
end
您已经定义了一个实例方法,如果你把它叫做上的一篇文章实例,它应该实际工作(但将没有多大意义,在设计方面)。将其定义为self.article_title(id)
以使其成为类方法。
此外,在您的视图中定义变量并执行查找通常不是一种好的做法。视图是用于显示信息的模板 - 仅此而已。您的业务逻辑越是以不可预知的方式通过您的应用传播,未来的开发和变更就越困难。
我同意,但它是我能看到所有必需信息的唯一方法 – Jseb 2013-02-17 21:13:37
什么不行?有没有错误? – Baldrick 2013-02-17 20:50:48
当我打电话给它时,它说undefined article_title是undefined – Jseb 2013-02-17 20:56:57
这是非常糟糕的做法。也许告诉我们为什么你觉得你必须通过视图来看标题。 – 2013-02-18 01:27:58