【问题标题】:Django Postgres Make Migration ErrorDjango Postgres 使迁移错误
【发布时间】:2018-04-07 11:26:39
【问题描述】:

我刚刚从本地部署了一些代码到生产服务器上。我已经使用 django 应用程序建立了一个 postgres 数据库。问题是当我运行时:

$ python3 /usr/Apps/manage.py makemigrations

我收到以下错误

##################################################
Traceback (most recent call last):
  File "/home/ubuntu/.local/lib/python3.5/site-packages/django/db/backends/utils.py", line 85, in _execute
    return self.cursor.execute(sql, params)
psycopg2.ProgrammingError: relation "api_neli_report" does not exist
LINE 1: ...ort"."price", "api_neli_report"."prediction" FROM "api_neli_

api_neli_report 是我设置的尚未迁移的模型,因为我无法在没有错误的情况下迁移它。

知道如何解决这个问题吗?

另见型号:

from django.db import models

# Create your models here.

class SSALi_Report(models.Model):

    date = models.DateField()
    ticker = models.CharField(max_length=10,default='NA')
    market = models.CharField(max_length=250,default='NA')

    price = models.FloatField()
    prediction = models.FloatField()



    def __str__(self):
        return str(self.date) + " - " + str(self.ticker)

class NELi_Report(models.Model):

    date = models.DateField()
    ticker = models.CharField(max_length=10,default='NA')
    market = models.CharField(max_length=250,default='NA')

    price = models.FloatField()
    prediction = models.FloatField()

请注意该模型正在我的本地工作

另见我的资源模型:

# Logic/resources.py

from tastypie.resources import ModelResource
from api.models import SSALi_Report
from api.models import NELi_Report
from tastypie.authorization import Authorization
class SSALi_Resource(ModelResource):
    class Meta:
        queryset =  SSALi_Report.objects.all()
        print("#"*50)
        print(queryset)
        resource_name = 'SSALi_Report'
        authorization = Authorization()

class NELi_Resource(ModelResource):
    class Meta:
        queryset =  NELi_Report.objects.all()
        print("#"*50)
        print(queryset)
        resource_name = 'NELi_Report'

我本地的表

 Schema |            Name            | Type  |  Owner   
--------+----------------------------+-------+----------
 public | api_neli_report            | table | postgres

【问题讨论】:

  • 您使用的是哪个版本的 PostgreSQL、Djnago 和 Psycopg2?
  • Django==2.0.4 PostgreSQL 9.6.6 Python =3.5 psycopg2==2.7.4 psycopg2-binary==2.7.4
  • 你也可以发布模型吗?谢谢
  • 查看更新后的帖子
  • 另外,请注意,您通常不应在生产环境中运行 makemigrations。通常的方法是在开发中进行一次迁移,将迁移提交到您的存储库,然后在生产中运行migrate

标签: python django postgresql


【解决方案1】:

因此,解决此问题的唯一方法是将本地数据库导出为 SQL,然后将其导入生产数据库。这不是我想要的方式,但它完成了工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-01-14
    • 2011-11-19
    • 2017-06-18
    • 1970-01-01
    • 2018-09-03
    • 2018-10-15
    • 1970-01-01
    • 2019-06-23
    相关资源
    最近更新 更多