Update- I think the ActionDispatch::Integration::Session is only
returned in console.

Seems that console believes I'm calling it's own 'app' method even
though I've delegated it to an association.

Is this something worth filing a bug report on?  Should I just rename
App to something else, however unnatural it may be?



On Fri, Nov 19, 2010 at 2:51 AM, Stefan Alder <twigbra...@gmail.com> wrote:
> class Foo < ActiveRecord::Base
>  has_one :bar
>  delegate :app, :to => :bar
> end
>
> class Bar < ActiveRecord::Base
>  belongs_to :app
>
>  def self.attribute_column_names
>    return @@attr_columns if defined?(@@attr_columns)
>    readers = content_columns.map { |n| n.name.intern } -
> [:created_at,:updated_at]
>    @@attr_columns ||= readers.map { |k| [k, "#{k}=".to_sym] }.flatten
>  end
> end
>
>
> This all worked fine until in the console in my staging and production
> environments, I assigned bar.app to an undefined variable:
>
> Bar.all.each do |p|
>  p.update_attribute("app_id", my_undefined_variable)
> end
>
> After doing this, I get:
>  NameError: undefined local variable or method
> `my_undefined_variable' for main:Object
>
> and
> for whatever reason Foo.first.app is now returning an
> ActionDispatch::Integration::Session object -- not only in the
> console, but through the web, as well.
>
> How can I correct this?
>

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-t...@googlegroups.com.
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to