Instance methods in runner?


#1

I am having a devil of a time with some runner actions.

I can not seem to call any instance methods on found records.

Even when I strip is down to the basics:

def self.deliver
self.find(:all, :conditions => ["#{Message.table_name}.status
= ?", ‘pending’], :include => [:site, :template]).each {|m|
logger.info m.is_recurring? # my method
logger.info m.new_record? # ar method
}
end

Both logger entries show black lines in the logger.

Nothing seems to work.

This object uses STI, could that be the problem?


Lon B.
http://www.speedymac.com
AIM: spdemac


#2

On Feb 26, 2006, at 6:33 PM, Lon B. wrote:

logger.info m.new_record? # ar method
}
end

def self.deliver
find(:all, :conditions => ["#{Message.table_name}.status = ?",
‘pending’], :include => [:site, :template]).each {|m|
logger.info m.is_recurring? # my method
logger.info m.new_record? # ar method
}
end

Try that instead. If that doesn’t work try self.class.find :all …

-Ezra