2017-04-12 158 views
0

我想通過添加db_index = True將索引添加到已經存在的Django模型字段。相應的表在數據庫中已經有很多數據。將db_index = True添加到該字段後,是否會在使用新更改進行遷移後自動對這些值進行索引?將db_index = True添加到已具有大量數據的Django模型

+0

它應該工作。但首先進行數據庫備份。你可能需要添加你的'db_index = models.BooleanField(default = True)' – Tushortz

回答

0

理想情況下,是的。這會在你的sql表中創建一個索引。所以,只要你運行你的migrations你的表就會添加索引。

如果您想嘗試對其進行硬編碼,您可以在您的遷移腳本中將其添加到轉發方法中。它可能看起來像這樣

db.execute("CREATE INDEX my_index on table_name(col_name)", params=[]) 
+0

db在添加db_index = True後添加了索引後遷移。 –

相關問題