searchlogic icon indicating copy to clipboard operation
searchlogic copied to clipboard

does_not_equal function does not work for nil

Open ghazel opened this issue 15 years ago • 0 comments

The _equals function works for strings and nil, but the _does_not_equal function does not.

User.name_equals(x)

Submits either:

SELECT * FROM `users` WHERE (users.name = 'foo')

or:

SELECT * FROM `users` WHERE (users.name IS NULL)

Depending on whether x is "foo" or nil. This is correct. However this:

User.name_does_not_equal(x)

Submits either:

SELECT * FROM `users` WHERE (users.name != 'foo')

or:

SELECT * FROM `users` WHERE (users.name != NULL)

The later of which is incorrect. It should be users.name IS NOT NULL.

ghazel avatar Nov 23 '10 01:11 ghazel