Figuring Out How To Access Methods

I have an advertiser model and an experiment model. I’ve setup the
associations as follows:

Advertiser has_many :experiments
Experiment belongs_to :advertisers

The experiments table has a column titled “experiment_type”, which can
either be AOV or Conversion. I am trying to display experiments for the
particular advertiser by experiment_type.

I can successfully display ALL of the experiments by advertiser with the
following iteration

<% @advertiser.experiments.each do |experiments| %>

<%= experiments.id %> <%= experiments.name %> <% end %>

Or I can successfully display all the experiment_type with the following
iteration

<% @aov.each do |experiments| %>

<%= experiments.id %> <%= experiments.name %> <% end %>

What I cannot figure out is how to show the experiment_type by
advertiser. I thought something like

<% @advertiser.aov.each do |experiments| %> would work, but it gives me
an undefined method `aov’ for #<Advertiser:

The aov action within my experiments controller is

def set_aov_experiments
@aov = Experiment.where(“experiment_type = ?”, “AOV”)
end

Any help would be appreciated. Thanks in advance.

On Fri, Jul 1, 2016 at 6:52 AM, Scott Le gendre [email protected]
wrote:

I have an advertiser model and an experiment model. I’ve setup the
associations as follows:

Advertiser has_many :experiments
Experiment belongs_to :advertisers

The experiments table has a column titled “experiment_type”, which can
either be AOV or Conversion. I am trying to display experiments for the
particular advertiser by experiment_type.

It sounds like you wanted to do this:

HTH,

Hassan S. ------------------------ [email protected]

twitter: @hassan
Consulting Availability : Silicon Valley or remote

On 1 July 2016 at 14:52, Scott Le gendre [email protected] wrote:

I can successfully display ALL of the experiments by advertiser with the
<% @aov.each do |experiments| %>

<%= experiments.id %> <%= experiments.name %> <% end %>

What I cannot figure out is how to show the experiment_type by
advertiser.

Something like
@advertiser.experiments.where(experiment_type: “AOV”).each do
|experiment|
will get you all the AOV experiments (I have assumed that this is
actually a string “AOV”).
Note that I have said do |experiment| with singular experiment. This
makes no difference to the way the code works but makes it clear that
this is a single experiment so that experiment.name looks meaningful.

In fact you would be better to write scopes for AOV and Conversion as
then the code will read even better and you would save some typing.

Colin