[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

undefined method `convert_to' for false:FalseClass

Dean

3/6/2006 3:20:00 AM

I have a rails app (so maybe this is a question for the rails list) that
uses a temperature class I also wrote. When the app goes to save a new
record, I get this error message.

undefined method `convert_to' for false:FalseClass

Why is convert_to being passed a flase object? The method is:

def ==(t_obj)
@temp == t_obj.convert_to(@units).temp
end

the convert_to method converts a temperature object to the requested
units (C, F, K).
It is coming from:

#{RAILS_ROOT}/app/models/temperature.rb:82:in `=='
#{RAILS_ROOT}/vendor/rails/activerecord/lib/active_record/callbacks.rb:248:in
`create_or_update'
<snip>

Regards,
--Dean

--
Posted via http://www.ruby-....


1 Answer

Yuu

3/6/2006 5:22:00 AM

0

Dean wrote:
> I have a rails app (so maybe this is a question for the rails list) that
> uses a temperature class I also wrote. When the app goes to save a new
> record, I get this error message.
>
> undefined method `convert_to' for false:FalseClass
>
> Why is convert_to being passed a flase object? The method is:

It could just be Rails weirdness. Paste the code where the call
is, if at all possible. In the meanwhile, try this workaround to
see if this is a problem or just something Rails did not expect
you to do:

> def ==(t_obj)
> @temp == t_obj.convert_to(@units).temp
> end

def ==(other)
other and @temp == other.convert_to(@units).temp
end

Here we fail immediately if other is nil or false.

> the convert_to method converts a temperature object to the requested
> units (C, F, K).
> It is coming from:
>
> #{RAILS_ROOT}/app/models/temperature.rb:82:in `=='
> #{RAILS_ROOT}/vendor/rails/activerecord/lib/active_record/callbacks.rb:248:in
> `create_or_update'
> <snip>
>
> Regards,
> --Dean


E

--
Posted via http://www.ruby-....