title: Find records where join doesn't exist
body: <p>I have a scope to limit all <code>questions</code> by whether or not a user has voted on them. In the model:</p>
  
  <pre><code>scope :answered_by, lambda {|u| joins(:votes).where("votes.user_id = ?", u.id) }
  scope :unanswered_by, lambda {|u| joins(:votes).where("votes.user_id != ?", u.id) }
  </code></pre>
  
  <p>In the controller, I call them like this:</p>
  
  <pre><code>@answered = Question.answered_by(current_user)
  @unanswered = Question.unanswered_by(current_user)
  </code></pre>
  
  <p>The unanswered_by scope is incorrect. I essentially want to find where there is no vote. Instead, it is trying to look for if there is a vote that doesn't equal the current user. Any ideas how to return all records where a join doesn't exist?</p>