繁体   English   中英

django点定义

[英]django point definition

我的模特:

class Mod(models.model)
    name = models.CharField(max_length = 255)
    co_x = models.DecimalField(max_digits = 11, decimal_places = 8)
    co_y = models.DecimalField(max_digits = 11, decimal_places = 8)

我的看法:

def closedPoint(request):
    location_name = str(request.POST.get("lo", default=""))
    nokta_x = int(float(request.POST.get("x"))
    nokta_y = int(float(request.POST.get("y"))
    poi = Point(nokta_x, nokta_y, srid = 900913)

    sk = Mod()
    poi_s = Point(sk.co_x, co_y, srid = 900913)

    resut_poi = Mod.objects.filter(poi_s__distance_lte = (poi, D(km = 7))).filter(name__in = location_name)

在这里我想扣除7公里内的最近点,但它给出了“为点初始化提供的无效参数

好的,现在可以很清楚地看到您的错误消息来自使用None初始化Point类。

那是您的第一个关键问题。

根据错误消息判断,我的猜测是poi_s使用None, None初始化, None, None初始化None, None因为Mod()是一个未保存的实例,没有值,并且这些参数都是无效的。

sk = Mod() # unsaved Mod instance with no defaults
poi_s = Point(sk.co_x, co_y, srid = 900913)
# sk.co_x is None

解决上述问题后将出现的第二个问题是查询具有无效查询类型(特定于PointField__distance )的模型,该模型接受元组。 我不知道该如何解决。

您将必须查看GeoDjango如何将该元组转换为数据库查找。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM