Rails Dynamic Finders Return nil

Using Ruby on Rails - sqlite3, rails 3.2.2, ruby 1.9.3p125 (on windows XP)

Having the record in the db:

Shop.find(123) - returns the shop Shop.where(:id => 123) - returns the shop

but

Shop.find_by_id(123) returns nil Shop.find_by_name("some_name") returns nil

So do all the dynamic finders (notice it returns nil for integer value and for string values). This happens with every model in every app (even gems) Just as if I called Shop.some_missing_method()

Why aren't they defined?

Using Ruby on Rails - sqlite3, rails 3.2.2, ruby 1.9.3p125 (on windows XP)

Having the record in the db:

Shop.find(123) - returns the shop Shop.where(:id => 123) - returns the shop

but

Shop.find_by_id(123) returns nil Shop.find_by_name("some_name") returns nil

So do all the dynamic finders (notice it returns nil for integer value and for string values). This happens with every model in every app (even gems) Just as if I called Shop.some_missing_method()

That would not return nil, it would give an exception. Which is it in your case? Also you did not reply to my question (on the core list) about what is shown in the log when you call find_by_id. Does it execute some sql? If so then what?

Colin

Colin Law wrote in post #1071355:

Solved.

Either by upgrading to rails 3.2.6 or by removing 'annotated_model' gem.

Thanks.