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.
Feed¶En plus de méthodes fournies par la classe de base django.contrib.syndication.views.Feed, la classe Feed de GeoDjango ajoute les éléments ci-dessous qui peuvent être surchargés. Cette surcharge peut se faire de plusieurs manières :
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): ...
Accepte l’objet renvoyé par get_object() et renvoie la géométrie du flux. Il s’agit typiquement d’une instance GEOSGeometry ou d’un tuple représentant un point un ou rectangle. Par exemple :
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).
Définissez ceci pour renvoyer la géométrie de chaque élément du flux. Il peut s’agir d’une instance GEOSGeometry ou d’un tuple représentant les coordonnées d’un point ou d’un rectangle englobant. Par exemple :
class ZipcodeFeed(Feed):
def item_geometry(self, obj):
# Returns the polygon.
return obj.poly
déc. 03, 2025