我使用Django 1.11,PostgreSQL 9.6和Django迁移工具。我找不到指定列顺序的方法。在初始迁移中,更改字段的顺序很好但是migrations.AddField()
调用呢?对于初始迁移的外键添加,也可能发生AddField
次调用。有没有办法指定订单,或者我只是沉迷于订单,但我不应该?
讨论后更新
PostgreSQL DBMS不支持位置列添加。因此,期望来自迁移工具的此工具用于添加色谱柱实际上毫无意义。
答案 0 :(得分:2)
AFAIK,没有官方支持的方法来做到这一点,因为字段应该是原子的,它不应该是相关的。然而,它也与我强迫性的一面混淆,并且我喜欢在我需要调试dbshell
中的内容时订购我的列。以下是我发现你可以做的事情:
python manage.py makemigrations
fields
migrations.createModel
答案 1 :(得分:0)
我不是100%知道PostgreSQL语法,但这是创建数据库后在SQL中的样子。我确定PostgreSQL会具有同等的功能:
更改表yourtable
。yourmodel
columntochange
columntochange
更改列columntoplaceunder
之后的INT(11)不为空;
或者,如果您具有GUI(在我的情况下为MySQL工作台),则可以转到表设置,并根据需要简单地拖放列,然后单击“应用”。