我创建了一个 Django 项目,使用 PostGIS 后端,据我所知,这一切似乎都很好。我现在在这个项目中创建了一个应用程序,如下所示:
from django.contrib.gis.db import models
class MyPlace(models.Model):
name = models.CharField(max_length=255)
location = models.PointField()
objects = models.GeoManager()
这应该是一个名称/点对的简单模型(稍后将在此基础上构建),但数据库并未创建位置字段。没有错误,并且该字段被忽略,直到我尝试访问模型(使用管理员),它发出“DatabaseError:列 myproj_myplace.location 不存在”
我真的不确定这里出了什么问题,因为解析没有错误(syncdb 无一例外地工作)。当我为模型运行 sql 命令时,这就是我得到的:
BEGIN;
CREATE TABLE "myproj_myplace" (
"id" serial NOT NULL PRIMARY KEY,
"name" varchar(255) NOT NULL
)
;
COMMIT;
再次没有字段!有任何想法吗?
我的 INSTALLED_APPS 中既有 'django.contrib.gis' 也有我的应用程序,并且使用 PostGIS 支持构建了我的数据库模式(添加 sql 函数文件方法,而不是模板方法)
提前欢呼任何帮助
这是从空模式完成的,并且表是从头开始创建的