title: Django - ImportError: cannot import name simplejson
body: <p>I am a beginner with Django and I've come across a <code>ImportError: cannot import name simplejson</code> error. <a href="https://stackoverflow.com/questions/28048943/cannot-import-name-simplejson-after-installing-simplejson">Here</a>, someone suggested updating extdirect's providers.py to import json instead of simplejson, but I have no idea after long hours of surfing net how to do this, and I can't figure out what is extdirect? Ultimately, my goal is to turn ORM query result set into json and pass it to client-side. </p>
  
  <p>Here is the code:</p>
  
  <pre><code>from django.core import serializers
  
  vendors_json = AgreementVendors.objects.select_related('agreement_unique').all()
  return serializers.serialize('json', [x.agreement_unique for x in vendors_json])
  </code></pre>
  
  <p>The model:</p>
  
  <pre><code>  class AgreementUnique(models.Model):
      agreement_number = models.CharField(max_length=45, blank=True, null=True)
      sign_date = models.DateTimeField(default=timezone.now)
      cities = models.ForeignKey('address.Cities', on_delete=models.CASCADE)
      sale_point = models.ForeignKey('legal_entity.SalePoint', on_delete=models.CASCADE)
      sale_point_representative = models.ForeignKey('employee.Employees', on_delete=models.CASCADE)
      partner_base = models.ForeignKey('PartnershipBase', on_delete=models.CASCADE)
      agreement_from = models.DateField()
      agreement_to = models.DateField()
      blacknwhite = models.NullBooleanField()
      prolongable = models.NullBooleanField()
  
      class Meta:
          managed = False
          db_table = 'agreement_unique'
  
      def __unicode__(self):
          try:
              return smart_unicode(AgreementEmployees.objects.get(agreement_unique=self.id).person_unique)
          except AgreementEmployees.DoesNotExist:
              return smart_unicode(self.agreement_number)
  
  class AgreementVendors(models.Model):
      agreement_unique = models.ForeignKey(AgreementUnique, on_delete=models.CASCADE)
      vendors = models.ForeignKey('vendor.Vendors', on_delete=models.CASCADE)
      return_percentage = models.FloatField()
      payment_method = models.ForeignKey('additional.PaymentMethod', on_delete=models.CASCADE)
      vendor_representative = models.ForeignKey('person.PersonUnique', on_delete=models.CASCADE)
      days_of_payment = models.IntegerField()
  
      class Meta:
          managed = False
          db_table = 'agreement_vendors'        
  
      def __unicode__(self):
          return smart_unicode(self.vendors)
  </code></pre>
  
  <p>And the traceback:</p>
  
  <pre><code>Traceback (most recent call last):
    File "C:\Python27\lib\site-packages\django\core\handlers\base.py", line 148, in get_response
      response = self.process_exception_by_middleware(e, request)
    File "C:\Python27\lib\site-packages\django\core\handlers\base.py", line 146, in get_response
      response = wrapped_callback(request, *callback_args, **callback_kwargs)
    File "C:\Users\edgar\Desktop\Project\djprj\vendor\views.py", line 153, in create_new_vendor_agreement
      return serializers.serialize('json', [x.agreement_unique for x in vendors_json])
    File "C:\Python27\lib\site-packages\django\core\serializers\__init__.py", line 128, in serialize
      s = get_serializer(format)()
    File "C:\Python27\lib\site-packages\django\core\serializers\__init__.py", line 51, in __call__
      raise self.exception
  ImportError: cannot import name simplejson
  </code></pre>
  
  <p>Also, it is strange that I can't come across a single occurrence of simplejson when trying to search it via Ctrl+F project-wide</p>