我有一个广告商模型和一个实验模型。我已经按照以下方式设置了这些关联:
Advertiser has_many :experiments
Experiment belongs_to :advertisers
实验表有一个名为"experiment_type",的列,它可以是、AOV、或转换。我正试图通过experiment_type为特定的广告商展示实验。
我可以用下面的迭代成功地显示广告商的所有实验。
<% @advertiser.experiments.each do |experiments| %>
<td><%= experiments.id %></td>
<td><%= experiments.name %></td>
<% end %>
或者我可以通过下面的迭代成功地显示所有的experiment_type
<% @aov.each do |experiments| %>
<td><%= experiments.id %></td>
<td><%= experiments.name %></td>
<% end %>
我不明白的是广告商如何展示experiment_type。我以为
<% @advertiser.aov.each do |experiments| %>
可以工作,但它给了我一个
未定义的方法‘`aov’表示#
在我的实验控制器中的aov动作是
def set_aov_experiments
@aov = Experiment.where("experiment_type = ?", "AOV")
end
任何帮助都将不胜感激。提前谢谢。
发布于 2016-07-01 13:58:03
这是因为aov不是的方法。
如果您想这样使用它,请将其放在您的Advertiser模型上:
def aov
experiments.where(experiment_type: 'AOV')
end
https://stackoverflow.com/questions/38147152
复制相似问题