Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed #22563: Added migration to admin, fixed a few more loader issues.

  • Loading branch information...
commit edd9f8a7b2beb0fe2f83a9e50157c45364753121 1 parent 1e5c01c
@andrewgodwin andrewgodwin authored
View
36 django/contrib/admin/migrations/0001_initial.py
@@ -0,0 +1,36 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+from django.conf import settings
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+ ('contenttypes', '__latest__'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='LogEntry',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('action_time', models.DateTimeField(auto_now=True, verbose_name='action time')),
+ ('object_id', models.TextField(null=True, verbose_name='object id', blank=True)),
+ ('object_repr', models.CharField(max_length=200, verbose_name='object repr')),
+ ('action_flag', models.PositiveSmallIntegerField(verbose_name='action flag')),
+ ('change_message', models.TextField(verbose_name='change message', blank=True)),
+ ('content_type', models.ForeignKey(to_field='id', blank=True, to='contenttypes.ContentType', null=True)),
+ ('user', models.ForeignKey(to=settings.AUTH_USER_MODEL, to_field='id')),
+ ],
+ options={
+ 'ordering': ('-action_time',),
+ 'db_table': 'django_admin_log',
+ 'verbose_name': 'log entry',
+ 'verbose_name_plural': 'log entries',
+ },
+ bases=(models.Model,),
+ ),
+ ]
View
0  django/contrib/admin/migrations/__init__.py
No changes.
View
2  django/db/migrations/autodetector.py
@@ -205,7 +205,7 @@ def _detect_changes(self, convert_apps=None):
elif dep[0] != app_label:
# External app dependency. See if it's not yet
# satisfied.
- for other_operation in self.generated_operations[dep[0]]:
+ for other_operation in self.generated_operations.get(dep[0], []):
if self.check_dependency(other_operation, dep):
deps_satisfied = False
break
View
7 django/db/migrations/loader.py
@@ -135,7 +135,7 @@ def get_migration_by_prefix(self, app_label, name_prefix):
return self.disk_migrations[results[0]]
def check_key(self, key, current_app):
- if key[1] != "__first__" or key in self.graph:
+ if (key[1] != "__first__" and key[1] != "__latest__") or key in self.graph:
return key
# Special-case __first__, which means "the first migration" for
# migrated apps, and is ignored for unmigrated apps. It allows
@@ -151,7 +151,10 @@ def check_key(self, key, current_app):
return
if key[0] in self.migrated_apps:
try:
- return list(self.graph.root_nodes(key[0]))[0]
+ if key[1] == "__first__":
+ return list(self.graph.root_nodes(key[0]))[0]
+ else:
+ return list(self.graph.root_nodes(key[0]))[-1]
except IndexError:
raise ValueError("Dependency on app with no migrations: %s" % key[0])
raise ValueError("Dependency on unknown app: %s" % key[0])
Please sign in to comment.
Something went wrong with that request. Please try again.