Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何正确创建实例(或类)方法(关联模型)_Ruby On Rails_Model_Controller - Fatal编程技术网

Ruby on rails 如何正确创建实例(或类)方法(关联模型)

Ruby on rails 如何正确创建实例(或类)方法(关联模型),ruby-on-rails,model,controller,Ruby On Rails,Model,Controller,我想添加实例方法(或类),但通常会得到未定义的方法错误。 网站已与报告关联,具有价值。我需要得到这个值。 在我看来,我想这样称呼它: 我不知道如何正确地创建它,它应该是类还是实例方法,以及它应该是什么?Website.find()返回一个Website实例 如果网站有一个性能报告,而PerformanceRecord有一个字段转换 Website.find(38).performance_report.conversions 应该在不定义任何方法的情况下工作。如果这不符合预期,则应检查关联定

我想添加实例方法(或类),但通常会得到未定义的方法错误。 网站已与报告关联,具有价值。我需要得到这个值。 在我看来,我想这样称呼它:

我不知道如何正确地创建它,它应该是类还是实例方法,以及它应该是什么?

Website.find()返回一个Website实例

如果网站有一个性能报告,而PerformanceRecord有一个字段转换

 Website.find(38).performance_report.conversions

应该在不定义任何方法的情况下工作。如果这不符合预期,则应检查关联定义。在控制器上定义类方法不会产生任何效果。

您应该在模型中添加该方法,而不是在控制器中添加该方法。它是一个实例方法,因此应该是
def amount

class Website < ActiveRecord::Base
  def amount
    self.performance_report.conversions
  end
end
class网站
使用此选项,您可以在视图中执行以下操作:

<% websites.each do |website| %>
  <%= website.amount %>
<% end %>

也许我的问题有点错。在我看来,我想调用方法。我将编辑这个问题。
class Website < ActiveRecord::Base
  def amount
    self.performance_report.conversions
  end
end
<% websites.each do |website| %>
  <%= website.amount %>
<% end %>