我正在从Rails迁移到Django并拥有一个现有的数据库。我通过python manage.py inspectdb > models.py
创建了models.py
,进行了更改,并测试了一些端点。一切似乎都很好。在
然后我运行python manage.py makemigrations
和{
我注意到一个旧Rail的特定模型/表ArInternalMetadata
/ar_internal_metadata
。我认为只要从models.py
中删除模型并重新运行makemigrations
就可以轻松地删除表,但是当我这样做时,django只说No changes detected
。运行migrate
也不会删除表。在
明白了。当
inspectdb
从现有数据库中创建模型时,它将Meta
内部类中的managed
默认设置为False
。在根据Django 2.1 Docs这将防止删除发生
从
Meta
类中删除managed = False
允许makemigrations
/migrate
删除表。在相关问题 更多 >
编程相关推荐