我有一个工作流程,其中一个模型是由脚本从一些也存储在数据库中的数据生成的:
SourceData -> management command generates -> Results
当我更改结果模型的生成方式时,例如添加新字段,我不想设置默认值或更新现有模型,我想删除所有模型并再次运行脚本以使用新领域:
Delete all Results -> run management command v2 -> Results (+ new field)
有没有简单的方法来做到这一点?我在网上找到的只是如何通过删除整个数据库来实现这一点,这不是我想要的,我只想删除这个表并重新创建它。
无法找出正确的方法来做到这一点,但设法通过以下方式破解它:
DeleteModel
来之前CreateModel
,并更改正在创建的模型的名称CreateModel
回到原来的型号名称。它应该是这样的:class Migration(migrations.Migration):
dependencies = [
("<app name>", "<previous migration>"),
]
operations = [
migrations.DeleteModel(
name="ModelName",
),
migrations.CreateModel(
name="ModelName",
fields=[
# < all fields of your model >
],
options={
# < all meta options of your model >
},
),
]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句