Am I crazy?

I would expect the def case to work so long as it is not in the
private part of application_controller.rb. I would expect @img_types
= ... to also work. I would not expect just img_types = ... to work
as that is a local variable in the application_controller.rb object
and would quickly go out of scope when the class definition closes.

Michael

Hi --

I would expect the def case to work so long as it is not in the
private part of application_controller.rb. I would expect @img_types
= ... to also work. I would not expect just img_types = ... to work
as that is a local variable in the application_controller.rb object
and would quickly go out of scope when the class definition closes.

The first two cases actually work the other way around :slight_smile: A private
instance method of ApplicationController will be callable by the
subclasses (the other controllers). If you define an instance variable
out in the open:

  class AC < AC::Base
     @img_types = [a,b,c]
  end

that won't be visible to the other classes (since they're different
objects and instance variables are per-object).

David