Index: django/core/management/commands/loaddata.py
===================================================================
--- django/core/management/commands/loaddata.py	(revision 14551)
+++ django/core/management/commands/loaddata.py	(working copy)
@@ -171,6 +171,7 @@
                                     if router.allow_syncdb(using, obj.object.__class__):
                                         loaded_objects_in_fixture += 1
                                         models.add(obj.object.__class__)
+                                        self.fix_auto_values(obj)
                                         obj.save(using=using)
                                 loaded_object_count += loaded_objects_in_fixture
                                 fixture_object_count += objects_in_fixture
@@ -241,3 +242,10 @@
         # incorrect results. See Django #7572, MySQL #37735.
         if commit:
             connection.close()
+
+    def fix_auto_values(self, obj):
+        for f in obj.object._meta.fields:
+            if getattr(f, 'auto_now', False):
+                f.auto_now = False
+            if getattr(f, 'auto_now_add', False):
+                f.auto_now_add = False
Index: tests/regressiontests/admin_scripts/app_with_fixtures/__init__.py
===================================================================
Index: tests/regressiontests/admin_scripts/app_with_fixtures/fixtures/auto_now_add.json
===================================================================
--- tests/regressiontests/admin_scripts/app_with_fixtures/fixtures/auto_now_add.json	(revision 0)
+++ tests/regressiontests/admin_scripts/app_with_fixtures/fixtures/auto_now_add.json	(revision 0)
@@ -0,0 +1,9 @@
+[
+   {
+       "model": "app_with_fixtures.entry",
+       "pk": 1,
+       "fields": {
+           "content": "May the Force be with you."
+       }
+   }
+]
Index: tests/regressiontests/admin_scripts/app_with_fixtures/models.py
===================================================================
--- tests/regressiontests/admin_scripts/app_with_fixtures/models.py	(revision 0)
+++ tests/regressiontests/admin_scripts/app_with_fixtures/models.py	(revision 0)
@@ -0,0 +1,5 @@
+from django.db import models
+
+class Entry(models.Model):
+    content = models.CharField(max_length=64)
+    pub_date = models.DateTimeField(auto_now_add=True)
Index: tests/regressiontests/admin_scripts/tests.py
===================================================================
--- tests/regressiontests/admin_scripts/tests.py	(revision 14551)
+++ tests/regressiontests/admin_scripts/tests.py	(working copy)
@@ -10,6 +10,7 @@
 
 from django import conf, bin, get_version
 from django.conf import settings
+from django.core import serializers
 from django.utils import unittest
 
 class AdminScriptTestCase(unittest.TestCase):
@@ -997,6 +998,47 @@
         self.assertNoOutput(err)
         self.assertOutput(out, '0 errors found')
 
+
+class ManageLoadData(AdminScriptTestCase):
+    """
+    Tests loaddata command.
+    """
+    def setUp(self):
+        self.write_settings('settings.py',
+                            apps=['admin_scripts.app_with_fixtures'],
+                            sdict={'DEBUG': True})
+
+    def tearDown(self):
+        self.remove_settings('settings.py')
+        test_dir = os.path.dirname(os.path.dirname(__file__))
+        for format in serializers.get_public_serializer_formats():
+            try:
+                os.unlink(os.path.join(test_dir, 'initial_data.%s' % format))
+            except:
+                pass
+
+    def _make_initial_data(self, name):
+        format = name.rpartition('.')[2]
+        test_dir = os.path.dirname(os.path.dirname(__file__))
+        src = os.path.join(test_dir, 'admin_scripts', 'app_with_fixtures',
+                           'fixtures', name)
+        dst = os.path.join(test_dir, 'initial_data.%s' % format)
+        shutil.copyfile(src, dst)
+
+    def test_date_auto_now_add(self):
+        """
+        Tests that syncdb fails on loaddata stage, when there is a model with
+        DateField, which has auto_now_add=True, but the fixtures don't have the
+        value for that field.
+
+        See #12753.
+        """
+        self._make_initial_data('auto_now_add.json')
+        args = ['syncdb', '--noinput']
+        out, err = self.run_manage(args)
+        self.assertOutput(err, 'IntegrityError')
+
+
 ##########################################################################
 # COMMAND PROCESSING TESTS
 # Check that user-space commands are correctly handled - in particular,
Index: docs/ref/django-admin.txt
===================================================================
--- docs/ref/django-admin.txt	(revision 14551)
+++ docs/ref/django-admin.txt	(working copy)
@@ -353,6 +353,8 @@
 
 When fixture files are processed, the data is saved to the database as is.
 Model defined ``save`` methods and ``pre_save`` signals are not called.
+Nor would ``auto_now`` and ``auto_now_add`` options of ``DateField``,
+``DateTimeField`` and ``TimeField`` work.
 
 Note that the order in which fixture files are processed is undefined. However,
 all fixture data is installed as a single transaction, so data in
