如何更改应用在其他应用之后运行的迁移顺序?

时间:2017-05-31 15:30:26

标签: python django django-migrations django-serializer

我正在使用ModelSerealizer生成' api'我的项目,我有一个casa = CasaLegislativa.objects.first ()属性,如下面的代码所述:

Class SessaoPlenariaSerializer (serializers.ModelSerializer):

    # ...

    casa = CasaLegislativa.objects.first ()

    # ...

当我运行python manage.py migrate时,我收到以下错误:

Django.db.utils.ProgrammingError: relation "base_casalegislativa" does not exist

发生此错误是因为在为数据库中的CasaLegislativa类创建表之前调用了SessionPlenariaSerializer类的CasaLegislativa.objects.first ()方法。

app' api'没有模型也没有迁移(我不能使用依赖于其他迁移),但首先检查它,因为它首先按字母顺序排列。如何更改迁移的顺序,以便此应用程序可以使用#ap;'追赶其他人?

1 个答案:

答案 0 :(得分:0)

我找到的解决方案是获取casa属性并将CasaLegislativa.objects.first()调用传递给get_casa方法。因此,对表的引用只能在运行时完成,解决迁移问题。 不是一个好的解决方案,但解决了这个问题。