地理 Feed¶
GeoDjango has its own Feed
subclass that may embed location information
in RSS/Atom feeds formatted according to either the Simple GeoRSS or
W3C Geo standards. Because GeoDjango's syndication API is a superset of
Django's, please consult Django's syndication documentation for details on general usage.
例如¶
API 参考¶
Feed
子类¶
-
class
Feed
¶ In addition to methods provided by the
django.contrib.syndication.views.Feed
base class, GeoDjango'sFeed
class provides the following overrides. Note that these overrides may be done in multiple ways: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)¶
Takes the object returned by
get_object()
and returns the feed's geometry. Typically this is aGEOSGeometry
instance, or can be a tuple to represent a point or a box. For example: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)¶
Set this to return the geometry for each item in the feed. This can be a
GEOSGeometry
instance, or a tuple that represents a point coordinate or bounding box. For example:class ZipcodeFeed(Feed): def item_geometry(self, obj): # Returns the polygon. return obj.poly
-
SyndicationFeed
子类¶
The following django.utils.feedgenerator.SyndicationFeed
subclasses
are available:
-
class
GeoRSSFeed
¶
-
class
GeoAtom1Feed
¶
-
class
W3CGeoFeed
¶
注解
W3C Geo formatted feeds only support
PointField
geometries.