title: check_password() returning False
body: <p>I have made a model with its own password field. This is wholly separate from the <code>User</code> object. I'm using the <code>django.contrib.auth.hashers</code> library for this.</p>
  
  <p>In the create method for this model (overwriting a generic CreateListAPI view)</p>
  
  <pre><code>def create(self, request, *args, **kwargs):
          data = request.data
          data['password'] = make_password(data['password'])
          serializer = self.get_serializer(data=data)
          serializer.is_valid(raise_exception=True)
          self.perform_create(serializer)
          headers = self.get_success_headers(serializer.data)
          return Response(serializer.data, status=status.HTTP_201_CREATED, headers=headers)
  </code></pre>
  
  <p>This stores a hashed password in my database as expected, but when I try to authenticate with the password</p>
  
  <pre><code>def get_object(self):
      queryset = self.filter_queryset(self.get_queryset())
  
      try:
          # Grabs the 'name' parameter from the URL
          obj = queryset.get(name=self.kwargs['name'])
      except Group.DoesNotExist:
          raise Http404
  
      print(self.request.data['password'])  # raw password string
      print(obj.password)  # encoded password from database
      if check_password(self.request.data['password']), obj.password):
          raise Http404
  
      obj.user_set.add(self.request.user)
  
      self.check_object_permissions(self.request, obj)
      return obj
  </code></pre>
  
  <p><code>check_password</code> returns <code>False</code>. However, passing in the encoded password as the raw string password works. So hashing the password works, but not comparing the raw password to it after the fact.</p>