Table.exists?() returning false

I’m trying to use the .exists?() method in a rails application to detect
if name=‘blah’ exists in a row or not. According to the documentation
this would be
Person.exists?(:name => “David”)

However this always returns false for me. If I only look for the row ID
it works just fine.
Person.exists?(5)

I’ve reverted to a more manual approach but feel like this should work.
Has anyone made this work as documented? Is this a known bug?

Oliver