地理编码的django集成(使用geocodio)

dj-geocoding的Python项目详细描述


https://travis-ci.org/bennylope/dj-geocoding.svg?branch=master

django的简单地理编码功能。当前对地理编码服务的支持

阅读Read the Docs上的完整文档。

安装

安装DJ地理编码:

pip install dj-geocoding

然后在项目中使用:

import dj-geocoding

将地理编码服务API凭据添加到settings.py文件:

GEOCODIO_API_KEY="SOMEAPIKEY"

型号

如果不使用PASGIS,请将可选模型MIXIN应用到模型中:

from dj_geocoding.models import GeoBase

class MyModel(GeoBase, models.Model):
    pass

这将添加以下字段:

latitude = models.DecimalField(decimal_places=15, max_digits=18, null=True,
        blank=True)
longitude = models.DecimalField(decimal_places=15, max_digits=18, null=True,
        blank=True)

添加地理代码方法:

def geocode(self, \*args, \**kwargs):
    return geocode()

您应该在模型中扩展它,提供 将提取地址:

def geocode(self):
    return super(MyModel, self).geocode('address')

您也可以选择提供单个地址的分隔符:

def geocode(self):
    return super(MyModel, self).geocode('street_address', 'city', 'state',
            seperator=", ")

以及属性的其他属性属性。

批量地理编码

函数接受一个queryset并对其成员对象进行地理编码。

注意

模型必须实现一个点类型字段,该字段的行为类似于 点域。

示例:

geocoded_qs = bulk_geocode(MyModel.objects.all())

指定字段名:

geocoded_qs = bulk_geocode(MyModel.objects.all(), field='point')

经理

manager类使用地理代码方法实现子类queryset

MyModel.objects.all().geocode()

这将返回符合 地理编码服务的限制。这是一个方便的接口 批量地理代码函数。

管理站点

geocodedfilter筛选器可用于筛选基于管理员的位置 它们是否被地理定位。

< > > GeolocateMixin > /cTIT>类可以添加到您的 ModelAdmin 定义中添加 地理编码地址管理操作。这将“地理代码地址”操作添加到 管理操作下拉菜单,然后将允许您对整个 管理员的查询集。

历史

0.2.1(2014-12-02)

  • 消除了对管理操作中querysetgeocode方法的依赖
  • 添加文档

0.2.0(2014-09-08)

  • 修改具有地理位置的方法,删除属性状态
  • 添加了列表筛选器类geocodedfilter

0.1.1(2014-08-26)

  • 在设置点中处理单个无值的错误修复

0.1.0(2014-08-26)

  • pypi上的第一个版本。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
用户界面如何在JavaGUI中为按钮创建各种颜色?   使用MSCAPI的RSA密钥包装的java使用   java Spring数据Redis JedisConnectionException:意外的流结束   java饼图未显示预期输出   java hystrixCommand注释commandKey的用途是什么   windows java可以从cmd运行jar,但不能通过双击来运行   java在单击按钮时遍历XML节点   java试图使用日期(int,int,int)构造函数   带有Buildship 2子项目的java不作为项目依赖项链接   java jsonrpc4j:如何从服务器获取列表<SomeObject>?   用于Java应用程序的内存设置MaxDirectMemory和MaxHeapMemory   java如何从以下类型格式化日期   javayoutube。搜索列表搜索不返回任何内容   java My参数在方法中不起作用,因为泛型存在问题   java如何将Map<Key1Type,Val1Type>转换为Map<Key1Type,Val2Type>   JavaJUnit测试:测试用例的改进,测试数组列表的长度?   java如何在Android中解析带有属性值的xml数据?   使用Hibernate对枚举类型进行Java8bean验证