Добавил в модель три необязательных поля, но manage.py makemigrations создаёт миграции типа CreateTable (последних трёх полей в таблице нет, ) вместо AlterTable или AlterField:
migrations.CreateModel(
name='InviteBonus',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('total', models.DecimalField(verbose_name='\u0421\u0443\u043c\u043c\u0430 \u043f\u043b\u0430\u0442\u0435\u0436\u0430', max_digits=12, decimal_places=2)),
('use_date', models.DateField(verbose_name='\u0414\u0430\u0442\u0430 \u043f\u043b\u0430\u0442\u0435\u0436\u0430')),
('line', models.PositiveIntegerField(null=True, verbose_name='\u043b\u0438\u043d\u0438\u044f', blank=True)),
('paid', models.BooleanField(default=False, verbose_name='\u0412\u044b\u043f\u043b\u0430\u0447\u0435\u043d\u043e')),
('five_per_period', models.BooleanField(default=False, verbose_name='\u043f\u044f\u0442\u044c \u0437\u0430 \u043f\u0435\u0440\u0438\u043e\u0434')),
('comment', models.CharField(max_length=100, verbose_name='\u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439')),
('inviter', models.ForeignKey(related_name='invite_bonuses', default=None, verbose_name='\u0423\u0447\u0430\u0441\u0442\u043d\u0438\u043a', to='accounts.TreeNode')),
('newbie', models.ForeignKey(related_name='awards', verbose_name='\u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0451\u043d\u043d\u044b\u0439', blank=True, to='accounts.TreeNode', null=True)),
],
options={
'db_table': 'invite_bonuses',
'verbose_name': '\u0432\u044b\u043f\u043b\u0430\u0442\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0443 \u0437\u0430 \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435',
'verbose_name_plural': '\u0432\u044b\u043f\u043b\u0430\u0442\u044b \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c \u0437\u0430 \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u044f',
},
bases=(models.Model,),
),
Что я делал:
- Удалял папку migrations
- Чистил таблицу django_migrations
Затем запускал
manage.py makemigrations
manage.py migrate - FAKED, потому что таблица уже есть, поэтому нужно делать добавление полей вместо создания таблицы
manage.py syncdb - Тоже ни о чём