2015-10-28 45 views
-1

每當我進行遷移時,Django都會自動將我的應用程序的名稱附加到數據庫表中。例如,如果我有應用程序myapp並且有一個名爲Model1的模型,則遷移後數據庫表名將爲myapp_model1如何在「makemigrations」之後更改表名

我不需要app名稱和表名。如果有人知道如何改變它,那麼請幫助我。

回答

1

我的建議是讓Django自動選擇表名。將應用程序名稱作爲前綴意味着您可以在不同的應用程序中擁有兩個具有相同名稱的模型,但其數據庫表名不會發生衝突。

如果您確實想要更改表名,則可以使用db_table選項在數據庫中設置表名。

class MyModel(models.Model): 
    name = models.CharField(max_length=50) 
    ... 

    class Meta: 
     db_table = 'mymodel' 

如果數據庫表已經被創建,這可能會很棘手。爲了避免出現問題,我只能爲新應用程序設置db_table選項。

相關問題