我想添加一列到現有的模型,並在運行「schemamigration --auto」後產生的遷移嘗試刪除另一個表!爲什麼會這樣做?爲什麼South決定刪除這個m2m表?
我的模型(簡體) -
class A(Model):
a = CharField()
b = BooleanField(default=False) # <--- this is the new column
class B(Model): # <---- this is the table South wants to delete
c = CharField()
d = ManyToManyField(A, through='C')
結果[遷移
def forwards(self, orm):
# Removing M2M table for field d on 'B'
db.delete_table('B_d') # <------- Why is that?
# Adding field 'b'
db.add_column('A', 'b', self.gf('django.db.models.fields.BooleanField')(default=False, blank=True), keep_default=False)
C確實存在:) 我沒有自己添加'through',但看起來像我的一位同事添加了它並自己刪除了m2m表沒有使用南),所以當(很晚)我添加了一列,並創建了一個自動遷移南嘗試刪除表。我想知道我添加的專欄是如何觸發的,Doh! – Iftah 2011-02-14 07:26:55