如何在模型中获取一个返回特定模型值的方法。
代码已经跟随
模型文章
def article_title(id)
art = Article.find_by_id(id)
return art.title
end
视图如下
<% arttitle = Article.article_title(id) %>
这不起作用,但我不确定如何做到这一点
答案 0 :(得分:2)
您已经定义了一个实例方法,如果您在文章实例上调用它,它实际上应该可以工作(但这在设计方面没有多大意义)。将其定义为self.article_title(id)
以使其成为类方法。
此外,在视图中定义变量和执行查找通常不是一种好习惯。视图是显示信息的模板 - 仅此而已。您的业务逻辑以不可预测的方式在您的应用中传播得越多,将来发展和变革的难度就会越大。
答案 1 :(得分:1)
该方法应定义为类方法,self
关键字
def self.article_title(id)
Article.find(id).title
end