Django 2.1 - Geographic Feeds

भौगोलिक फ़ीड




django

भौगोलिक फ़ीड

GeoDjango का अपना Feed उपवर्ग है जो RSS / एटम फ़ीड में स्थान की जानकारी को सरल GeoRSS या W3C भू मानकों के अनुसार स्वरूपित कर सकता है। क्योंकि GeoDjango का सिंडिकेशन API Django का सुपरसेट है, कृपया सामान्य उपयोग के विवरण के लिए Django के सिंडिकेशन दस्तावेज़ से परामर्श करें।

उदाहरण

एपीआई संदर्भ

उपवर्ग को 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() द्वारा लौटाए गए ऑब्जेक्ट को लेता है और फ़ीड की ज्यामिति लौटाता है। आमतौर पर यह एक 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)

फ़ीड में प्रत्येक आइटम के लिए ज्यामिति वापस करने के लिए इसे सेट करें। यह एक GEOSGeometry उदाहरण, या एक ट्यूपल हो सकता है जो एक बिंदु समन्वय या सीमा बॉक्स का प्रतिनिधित्व करता है। उदाहरण के लिए:

class ZipcodeFeed(Feed):

    def item_geometry(self, obj):
        # Returns the polygon.
        return obj.poly

SyndicationFeed उपक्लासेस

निम्नलिखित django.utils.feedgenerator.SyndicationFeed उपवर्ग उपलब्ध हैं:

class GeoRSSFeed [source]
class GeoAtom1Feed [source]
class W3CGeoFeed [source]

ध्यान दें

W3C जियो फॉर्मेटेड फीड्स केवल PointField जियोमेट्रीज को सपोर्ट PointField है।