gpt4 book ai didi

django - GeoDjango 项目缺少数据库模式中的字段

转载 作者:行者123 更新时间:2023-11-29 11:48:47 24 4
gpt4 key购买 nike

我已经使用 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()

这应该是一个名称/点对的简单模型(稍后构建),但数据库没有创建位置字段。没有错误,并且该字段被忽略,直到我尝试访问模型(使用 Admin),在那里它发出“DatabaseError:column myproj_myplace.location does not exist”

我真的不确定这里出了什么问题,因为解析没有错误(syncdb 无一异常(exception)地工作)。当我为模型运行 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 函数文件方法,而不是模板方法)

提前为任何帮助欢呼

这是从空模式完成的,表是从头开始创建的

最佳答案

尝试“python manage.py sqlall {app}”,由于某种原因,sql 输出不包含空间列,但 sqlall 包含。然后尝试使用 pgadmin3 直接在数据库上运行输出,您可能会更清楚地知道出了什么问题。

关于django - GeoDjango 项目缺少数据库模式中的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5596768/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com