Django重置自动增量pk/id字段用于生产

Vic*_*ong 6 python django postgresql django-models

(我是Django,Python和Postgresql的新手)我一直在开发中添加和删除数据,并注意到即使我删除了所有模型,pk也会不断加起来并且永远不会重置为1.在将其推送到生产之前,是否可以将pk重置为从1开始?这样做是个好主意吗?

lev*_*evi 10

您可以使用sqlsequencereset命令重置模型ID序列

python manage.py sqlsequencereset myapp1 myapp2 myapp3| psql
Run Code Online (Sandbox Code Playgroud)

如果要读取生成的sql命令,只需执行该命令而不将其传递给psql.

python manage.py sqlsequencereset myapp1 myapp2 myapp3
Run Code Online (Sandbox Code Playgroud)

您需要在生产数据库上使用此命令.但是,正如@knbk所提到的,如果你的生产数据库是新的,你不需要重置id序列.