Попробуйте
Widget.find(:all, :conditions => ["name like '%awesome%'"])
Только что добавили одинарные кавычки вокруг строки %awesome%
Редактировать: Хорошо, это на самом деле не работает. Sql sanitizer делает что-то нехорошее с% s.
Это будет работать.
Widget.find(:all, :conditions => ["name like ?","%awesome%"])
Согласно ответу Джона Топли, вы можете сделать строку переменной, если это то, что вам действительно нужно.
Один совет, который я считаю полезным при работе с ошибками SQL, - проверка development.log
, в которой будут перечислены все запросы, которые фактически выполняются к базе данных. Предполагая, что вы обладаете базовыми знаниями по SQL, часто полезно отлаживать их непосредственно в консоли, а не делать уколы на уровне ActiveRecord (хотя я думаю, что в вашем случае код подвергался критике, прежде чем он достиг этой стадии)