binarylogic / searchlogic

Searchlogic provides object based searching, common named scopes, and other useful tools.
http://rdoc.info/projects/binarylogic/searchlogic
MIT License
1.4k stars 133 forks source link

Using empty array with _any gives all results #148

Open chadb opened 13 years ago

chadb commented 13 years ago

This may entirely by my ignorance of searchlogic.

_Giving an empty array to id_isany() returns all rows. Seems like it should return 0 rows.

ruby-1.8.7-p330 :038 > current_account.groups.id_is_any( [ ] ).ascend_by_name.count SQL (2.5ms) SELECT count(*) AS count_all FROM groups WHERE ((groups.account_id = 1)) => 3834

_Using is works correctly.

ruby-1.8.7-p330 :040 > current_account.groups.id_is( [ ] ).ascend_by_name.count SQL (0.5ms) SELECT count(*) AS count_all FROM groups WHERE ((groups.id IN (NULL)) AND (groups.account_id = 1)) => 0