Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.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
Python django evolution没有';t使用django.contrib.gis.db.backends.postgis_Python_Django_Postgis_Geodjango_Django Evolution - Fatal编程技术网

Python django evolution没有';t使用django.contrib.gis.db.backends.postgis

Python django evolution没有';t使用django.contrib.gis.db.backends.postgis,python,django,postgis,geodjango,django-evolution,Python,Django,Postgis,Geodjango,Django Evolution,我无法为我的GeoDjango项目运行“/manage.py evolve--hint--execute”。它退出时出错: File "/home/viktor/.virtualenvs/senv/lib/python2.6/site-packages/django_evolution-0.6.7-py2.6.egg/django_evolution/db/__init__.py", line 18, in __init__ module = __import__('.'.join(mo

我无法为我的GeoDjango项目运行“/manage.py evolve--hint--execute”。它退出时出错:

File "/home/viktor/.virtualenvs/senv/lib/python2.6/site-packages/django_evolution-0.6.7-py2.6.egg/django_evolution/db/__init__.py", line 18, in     __init__
module = __import__('.'.join(module_name),{},{},[''])
ImportError: No module named django.contrib.gis.db.backends.postgis
以下是突变提示:

from django_evolution.mutations import AddField, DeleteField
from django.contrib.gis.db.models.fields import PointField


MUTATIONS = [
    AddField('Geodata', 'position_real', PointField, initial=<<USER VALUE REQUIRED>>),
    AddField('Geodata', 'position', PointField, initial=<<USER VALUE REQUIRED>>),
    DeleteField('Geodata', 'real_lat'),
    DeleteField('Geodata', 'lat'),
    DeleteField('Geodata', 'lng'),
    DeleteField('Geodata', 'real_lng')
]
#----------------------
Trial evolution successful.
来自django_evolution.com的
导入AddField,删除field
从django.contrib.gis.db.models.fields导入PointField
突变=[
AddField('Geodata','position_real',PointField,initial=),
AddField('Geodata','position',PointField,initial=),
DeleteField('Geodata','real_lat'),
DeleteField('Geodata','lat'),
DeleteField('Geodata','lng'),
DeleteField('Geodata','real_lng')
]
#----------------------
试验进化成功。
但是,使用*backends.postgis数据库引擎,web应用程序运行良好。这似乎只是一个django进化问题

有什么办法让进化发挥作用吗?
谢谢。

我只需在我的
settings.py
中添加
DATABASE\u ENGINE=“postgresql”
就解决了这个问题

查看
site packages/django_evolution-0.6.0-py2.7.egg/tests/utils.py中使用此变量的代码(您的路径可能会略有不同),
utils.py
将根据数据库调用
django_evolution-0.6.0-py2.7.egg/django_evolution/db
中的一个文件。然后查看db目录中的
postgresql.py
文件,它似乎是一个短脚本,可以对数据库实现运行一些基本测试。由于postgis后端可能与现成的postgres没有太大区别,我相信使用postgresql作为
数据库引擎
值是安全的