地理位置 Feed¶
GeoDjango 有自己的 Feed
子类,可以根据 简单 GeoRSS 或 W3C Geo 标准将位置信息嵌入到 RSS/Atom Feed 中。由于 GeoDjango 的联合播客 API 是 Django API 的超集,因此请参阅 Django 的联合播客文档 以了解一般用法。
示例¶
API 参考¶
Feed
子类¶
- class Feed[source]¶
除了
django.contrib.syndication.views.Feed
基类提供的 方法外,GeoDjango 的Feed
类还提供了以下覆盖。请注意,这些覆盖可以通过多种方式完成。from django.contrib.gis.feeds import Feed class MyFeed(Feed): # First, as a class attribute. geometry = ... item_geometry = ... # Also a function with no arguments def geometry(self): ... def item_geometry(self): ... # And as a function with a single argument def geometry(self, obj): ... def item_geometry(self, item): ...
- geometry(obj)¶
获取
get_object()
返回的对象,并返回Feed 的几何图形。通常,这是一个GEOSGeometry
实例,或者可以是一个元组来表示一个点或一个框。例如class ZipcodeFeed(Feed): def geometry(self, obj): # Can also return: `obj.poly`, and `obj.poly.centroid`. return obj.poly.extent # tuple like: (X0, Y0, X1, Y1).
- item_geometry(item)¶
将其设置为返回 Feed 中每个项目的几何图形。这可以是一个
GEOSGeometry
实例,或者是一个表示点坐标或边界框的元组。例如class ZipcodeFeed(Feed): def item_geometry(self, obj): # Returns the polygon. return obj.poly