Instead of poll.range_polls.all(), you could use poll.range_poll.exists().