Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django迁移不适用于Amazon Elastic Beanstalk上RDS中的Postgress_Django_Django Models - Fatal编程技术网

Django迁移不适用于Amazon Elastic Beanstalk上RDS中的Postgress

Django迁移不适用于Amazon Elastic Beanstalk上RDS中的Postgress,django,django-models,Django,Django Models,我已经编辑了我的Django model.py,其中有两个新模型:MyMap和CustomMap。当我迁移本地数据库并运行本地服务器时,我可以通过shell或管理客户端修改记录 在部署到AWS环境后,当我尝试从example.com/admin/as_app/CustomMap/在admin中添加MyMap或CustomMap时,我遇到以下错误: 位于/admin/as\u app/custommap的编程错误/ 关系“as\u app\u custommap”不存在 第1行:从“AS\u ap

我已经编辑了我的Django model.py,其中有两个新模型:MyMap和CustomMap。当我迁移本地数据库并运行本地服务器时,我可以通过shell或管理客户端修改记录

在部署到AWS环境后,当我尝试从example.com/admin/as_app/CustomMap/在admin中添加MyMap或CustomMap时,我遇到以下错误:

位于/admin/as\u app/custommap的编程错误/

关系“as\u app\u custommap”不存在

第1行:从“AS\u app\u custommap”中选择COUNT(“*”)作为“\u COUNT”

当我部署到elastic beanstalk时,所有迁移都自动生成并运行。我可以通过ssh确认EC2实例,如下所示:

(venv)[root@ip-#### django_folder]# python manage.py makemigrations
No changes detected
我还确认我的更改实际上在models.py中:

(venv)[root@ip-#### django_folder]# vi as_app/models.py

class MyMap(models.Model):
    name = models.CharField(default='', max_length=200, unique=True)
    def name_and_id(self):
        return self.name + " (" + str(self.pk) + ")"
    kml_file = models.FileField(upload_to='as_app/my_maps', blank=True, default='')
 
class CustomMap(models.Model):
    name = models.CharField(verbose_name='Map Name', default='', max_length=200, unique=True)
    def location(self):
        return u'<a href="' + settings.BASE_URL + u'map/custom_view/' + self.name + u'">' + settings.BASE_URL + u'map/custom_view/' + self.name + u'</a>'
    location.allow_tags = True
    widget1 = models.FileField(upload_to='as_app/custom_maps', blank=True, default='')
    widget2 = models.FileField(upload_to='as_app/custom_maps', blank=True, default='')
    widget3 = models.FileField(upload_to='as_app/custom_maps', blank=True, default='')
    widget4 = models.FileField(upload_to='as_app/custom_maps', blank=True, default='')
    widget5 = models.FileField(upload_to='as_app/custom_maps', blank=True, default='')
    widget6 = models.FileField(upload_to='as_app/custom_maps', blank=True, default='')
    widget7 = models.FileField(upload_to='as_app/custom_maps', blank=True, default='')
    widget8 = models.FileField(upload_to='as_app/custom_maps', blank=True, default='')
    widget9 = models.FileField(upload_to='as_app/custom_maps', blank=True, default='')
    widget10 = models.FileField(upload_to='as_app/custom_maps', blank=True, default='')

class ExternalData(models.Model):
    name = models.CharField(verbose_name='Data Name', default='', max_length=200, unique=True)
    location = models.URLField()
    def clickable_location(self):
        return u'<a href="' + self.location + u'">' + self.location + u'</a>'
    clickable_location.allow_tags = True 
...
最后,通过shell,我可以重现我在管理客户端收到的错误,并确认其他模型工作正常:

(venv)[root@ip-#### django_folder]# python manage.py shell
In [1]: import django
 
In [2]: from as_app.models import *
 
In [3]: django.setup()
 
In [4]: ExternalData
Out[4]: as_app.models.ExternalData
 
In [5]: MyMap
Out[5]: as_app.models.MyMap
 
In [6]: ExternalData.objects.all() 
Out[6]: []
 
In [7]: MyMap.objects.all() 
/opt/python/run/venv/local/lib/python2.7/site-packages/django/db/backends/utils.pyc in execute(self, sql, params)
     62                 return self.cursor.execute(sql)
     63             else:
---> 64                 return self.cursor.execute(sql, params)
     65
     66     def executemany(self, sql, param_list): 
 
ProgrammingError: relation "as_app_mymap" does not exist
LINE 1: ...app_mymap"."name", "as_app_mymap"."kml_file" FROM "as_app_my...
我已经尝试过使用伪标志进行迁移

还尝试按照建议手动运行sqlmigrate指定我的迁移

我尝试了大量搜索与以下内容相关的内容:

django inspectdb未显示模型

。。。和类似的短语,但没有运气


如果还有其他有助于尝试或显示的内容,请告诉我。

您是否尝试运行
迁移
<代码>(venv)[root@ip-####django_folder]#python manage.py migrate是的,我收到一条消息说没有要应用的迁移。今天也遇到了同样的问题。找到解决办法了吗?
(venv)[root@ip-#### django_folder]# python manage.py shell
In [1]: import django
 
In [2]: from as_app.models import *
 
In [3]: django.setup()
 
In [4]: ExternalData
Out[4]: as_app.models.ExternalData
 
In [5]: MyMap
Out[5]: as_app.models.MyMap
 
In [6]: ExternalData.objects.all() 
Out[6]: []
 
In [7]: MyMap.objects.all() 
/opt/python/run/venv/local/lib/python2.7/site-packages/django/db/backends/utils.pyc in execute(self, sql, params)
     62                 return self.cursor.execute(sql)
     63             else:
---> 64                 return self.cursor.execute(sql, params)
     65
     66     def executemany(self, sql, param_list): 
 
ProgrammingError: relation "as_app_mymap" does not exist
LINE 1: ...app_mymap"."name", "as_app_mymap"."kml_file" FROM "as_app_my...