如何为Django安装PostGIS



所以我遵循DOCS,只是想确保我正确理解。https://docs.djangoproject.com/en/1.10/ref/contrib/gis/install/postgis/

我只是创建一个名为migrations.py的文件:

from django.contrib.postgres.operations import CreateExtension
from django.db import migrations
class Migration(migrations.Migration):
    operations = [
        CreateExtension('postgis'),
        ...
    ]

并将其放到我的项目目录中?然后运行python management .py makemigration ?

仍然是通过sql查询直接创建扩展的更好方法:

CREATE EXTENSION postgis;

之后,你只需要导航到你的项目根目录(里面有一个manage.py文件)并运行python manage.py migrate(从django 1.9开始-在v.1.9之前首先运行python manage.py makemigrations,之后运行python manage.py migrate)

但是如果你想使用你的代码,你必须把它添加到"models.py"中。这是"python manage.py migrate"

调用的文件所以你的models.py看起来像:
from django.contrib.gis.db import models
from django.contrib.postgres.operations import CreateExtension
from django.db import migrations
class Migration(migrations.Migration):
    operations = [
        CreateExtension('postgis'),
    ]

class model1(models.Model):
     geom = models.GeometryField(srid=4326,blank=True,null=True)
     name = models.TextField(null=True)

最新更新