У меня есть следующее простое условие поиска:
Player.where('id NOT IN (?)', @groups.collect {|g| g.player_ids}.flatten)
Так что это находит всех игроков, которые в настоящее время не входят ни в одну группу, верно?Ну, проблема в том, что если в каких-либо группах нет игроков, ничего не отображается.Причиной этого является то, что генерируется следующий SQL:
SELECT "players".* FROM "players" WHERE (id NOT IN (NULL))
Мне это кажется странным по умолчанию, и я протестировал его в Rails 3.0.7 и 3.1.0.rc4 с тем же результатом,Теперь я мог бы создать некоторые условия, если @ groups.collect {| g |g.player_ids} пуст, но есть ли лучший способ сделать это?