Commit 63a6a653 authored by Emre Yilmaz's avatar Emre Yilmaz Committed by Tim Graham
Browse files

Fixed #25855 -- Enhanced the migration warning for runserver.

Added unapplied migration count and the list of unmigrated apps.
parent 54100077
Loading
Loading
Loading
Loading
+11 −3
Original line number Diff line number Diff line
@@ -172,9 +172,17 @@ class Command(BaseCommand):

        plan = executor.migration_plan(executor.loader.graph.leaf_nodes())
        if plan:
            self.stdout.write(self.style.NOTICE(
                "\nYou have unapplied migrations; your app may not work properly until they are applied."
            ))
            apps_waiting_migration = sorted(set(migration.app_label for migration, backwards in plan))
            self.stdout.write(
                self.style.NOTICE(
                    "\nYou have %(unpplied_migration_count)s unapplied migration(s). "
                    "Your project may not work properly until you apply the "
                    "migrations for app(s): %(apps_waiting_migration)s." % {
                        "unpplied_migration_count": len(plan),
                        "apps_waiting_migration": ", ".join(apps_waiting_migration),
                    }
                )
            )
            self.stdout.write(self.style.NOTICE("Run 'python manage.py migrate' to apply them.\n"))

# Kept for backward compatibility
+0 −0

Empty file added.

+21 −0
Original line number Diff line number Diff line
from __future__ import unicode_literals

from django.db import migrations, models


class Migration(migrations.Migration):

    initial = True

    dependencies = [
    ]

    operations = [
        migrations.CreateModel(
            name='Foo',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=255)),
            ],
        ),
    ]
+0 −0

Empty file added.

+10 −0
Original line number Diff line number Diff line
from __future__ import unicode_literals

from django.db import models


class Foo(models.Model):
    name = models.CharField(max_length=255)

    class Meta:
        app_label = 'another_app_waiting_migration'
Loading