Scope Confusion - Controller iVars in Modules

I've created a module to include in a Controller. Basically it works, but I am expecting methods in the module to have access to instance variables from the controller, and that appears to not be the case. Yet, a simple Ruby example says it should be. I'm not sure what's different.

Simple Example:

   module ShapeStuff
     def set_type
       @type = 'circle'

   class Shape
     include ShapeStuff
     attr_accessor :type
     def initialize
       @type = 'square'

   x =
   puts x.type # 'square'

   puts x.type # 'circle'

My distilled Rails example would be something like this. I require the file in application.rb.

   module EventControls
     def change_test_var
       @test_var = 'y'

   class UsersAdminController < ApplicationController

     include EventControls
     layout '1col_admin'
     attr_accessor :test_var

     def some_action
       @test_var = 'x'

Using debug(@test_var) the value doesn't ever appear to change from 'x'


-- gw

oops, I meant environment.rb, of course

and... just to add more to this, I expected session to be available to the module methods too, but it isn't.

for now I'm passing ivars and session as params to module methods, but I'd really like to get rid of that.

-- gw