【发布时间】:2011-08-01 14:12:05
【问题描述】:
我使用 PostGIS 后端创建了一个 Django 项目,据我所知,这一切似乎都很好。我现在在这个项目中创建了一个应用程序如下:
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 函数文件方法,而不是模板方法)
为任何帮助提前欢呼
这是从一个空架构完成的,并且表是从头开始创建的
【问题讨论】:
标签: django postgresql django-models postgis geodjango