15
Дек
2017

Как добавить новое поле в модель django?

Создаю новое приложение Django. Так сказать тренируюсь.
Описал модель Competition

class Competition(models.Model):
    title = models.CharField(max_length=200)
    slug = models.SlugField(max_length=200, unique=True)

    def __str__(self):
        return self.title

Проделал миграцию и всё такое.
Потом понял что в модель надо добавить ещё одно поле.

class Competition(models.Model):
    title = models.CharField(max_length=200)
    slug = models.SlugField(max_length=200, unique=True)
    event_place = models.CharField(max_length=200)

    def __str__(self):
        return self.title

Создаю миграцию - python manage.py makemigrations
Провожу миграцию - python manage.py migrate
Но в таблице новое поле не не создаётся.
Таблица Как всё таки добавить новое поле в базу? База данных - SQLite. Django 2.0

Содержание файла migrations

# Generated by Django 2.0 on 2017-12-15 06:15

from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

    dependencies = [
        ('contenttypes', '0002_remove_content_type_name'),
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
        ('competitions', '0001_initial'),
    ]

    operations = [
        migrations.CreateModel(
            name='Competition',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('title', models.CharField(max_length=200)),
                ('slug', models.SlugField(max_length=200, unique=True)),
                ('event_place', models.CharField(max_length=200)),
            ],
    ]

Вывод python manage.py showmigrations

admin
 [X] 0001_initial
 [X] 0002_logentry_remove_auto_add
auth
 [X] 0001_initial
 [X] 0002_alter_permission_name_max_length
 [X] 0003_alter_user_email_max_length
 [X] 0004_alter_user_username_opts
 [X] 0005_alter_user_last_login_null
 [X] 0006_require_contenttypes_0002
 [X] 0007_alter_validators_add_error_messages
 [X] 0008_alter_user_username_max_length
 [X] 0009_alter_user_last_name_max_length
competitions
 [X] 0001_initial
 [ ] 0002_auto_20171215_0915
contenttypes
 [X] 0001_initial
 [X] 0002_remove_content_type_name
home
 (no migrations)
sessions
 [X] 0001_initial

Источник: https://ru.stackoverflow.com/questions/758588/%D0%9A%D0%B0%D0%BA-%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C-%D0%BD%D0%BE%D0%B2%D0%BE%D0%B5-%D0%BF%D0%BE%D0%BB%D0%B5-%D0%B2-%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D1%8C-django

Тебе может это понравится...

Добавить комментарий