я следующие моделиКак поддельные миграции для не создавать определенную существующую посредническую таблицу
class VucutBolgesi(models.Model):
site = models.ForeignKey(Site)
bolge = models.CharField(verbose_name="Bölge", max_length=75)
hareketler = models.ManyToManyField("Hareket", verbose_name="Hareketler", null=True, blank=True, help_text="Bölgeyi çalıştıran hareketler")
class Hareket(models.Model):
site = models.ForeignKey(Site)
hareket = models.CharField(verbose_name="Hareket", max_length=75)
bolgeler = models.ManyToManyField(VucutBolgesi, verbose_name="Çalıştırdığı Bölgeler", null=True, blank=True,
help_text="Hareketin çalıştırdığı bölgeler")
У меня есть один и то же M2M как на столе, так как я хочу, чтобы отобразить такое же промежуточную таблицу на оба администраторе форм. Они также должны использовать одну и ту же таблицу (не создавать две отдельные таблицы), поскольку одно изменение в одной форме администратора должно отражаться на другой. Например, если я добавлю новый Hareket
в VucutBolgesi
через HareketAdmin
, тогда тот же результат будет отображаться также на VucutBolgesiAdmin
.
Для этого я сначала удаляю поле hareketler
M2M от VucutBolgesi
, так что модель Hareketler
создаст промежуточную таблицу. Я переношу это, а затем добавьте hareketler
в VucutBolgesi
с атрибутом db_table
, чтобы он распознал ту же промежуточную таблицу.
окончательного вид поля как folows
hareketler = models.ManyToManyField("Hareket", verbose_name="Hareketler", db_table="antrenman_hareket_bolgeler",
null=True, blank=True, help_text="Bölgeyi çalıştıran hareketler")
Когда я пытаюсь перенести это, Джанго броска следующего исключение
django.db.utils.OperationalError: table "antrenman_hareket_bolgeler" already exists
Как я должен это подделка миграции?
Ниже миграция Джанго создает каждый раз, когда я бег makemigrations
dependencies = [
('antrenman', '0005_vucutbolgesi_hareketler'),
]
operations = [
migrations.AddField(
model_name='vucutbolgesi',
name='hareketler',
field=models.ManyToManyField(to='antrenman.Hareket', db_table=b'antrenman_hareket_bolgeler', blank=True, help_text=b'B\xc3\xb6lgeyi \xc3\xa7al\xc4\xb1\xc5\x9ft\xc4\xb1ran hareketler', null=True, verbose_name=b'Hareketler'),
preserve_default=True,
),
]
Примечания: Редактирование связанного файл перенос и удаление migrations.AddField
Ф.О. не работает, так как Джанго создает то же migrations.AddField
с каждым makemigrations
Это жизнь заставка !!! – TAH