Географические потоки ¶
GeoDjango имеет собственный подкласс, Feed
который может содержать информацию о местоположении в каналах RSS / Atom, отформатированных в соответствии со стандартами Simple GeoRSS или W3C Geo . Поскольку API системы Syndication от GeoDjango является надмножеством API Django, обратитесь к документации по системе Django Syndication System для получения более подробной информации о его общем использовании.
Пример ¶
Справочник по API ¶
Подкласс Feed
¶
-
класс
Feed
¶ В дополнение к методам, предоставляемым базовым классом
django.contrib.syndication.views.Feed
, классFeed
GeoDjango добавляет элементы ниже, которые могут быть перегружены. Эту перегрузку можно выполнить несколькими способами: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()
и возвращает геометрию потока . Обычно это экземпляр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
( элемент ) ¶
Установите это, чтобы вернуть геометрию каждого элемента в потоке. Это может быть экземпляр
GEOSGeometry
или кортеж, представляющий координаты ограничивающей точки или прямоугольника. Например :class ZipcodeFeed(Feed): def item_geometry(self, obj): # Returns the polygon. return obj.poly
-
Подклассы SyndicationFeed
¶
Доступны следующие подклассы django.utils.feedgenerator.SyndicationFeed
:
-
класс
GeoRSSFeed
¶
-
класс
GeoAtom1Feed
¶
-
класс
W3CGeoFeed
¶
Заметка
Потоки, отформатированные в соответствии с W3C Geo, поддерживают только геометрию типов PointField
.