2011-08-12 8 views
5

https://docs.djangoproject.com/en/1.3/ref/contrib/gis/db-api/ के अनुसार, स्पैटियालाइट GeoQuerySet.distance() का समर्थन करता है। हालांकि, एक क्षेत्र सूची (MultiPolygonmpoly के रूप में विशेषता) आयातित, मैं निम्न कार्य करने की कोशिश कर रहा हूँ:क्या मुझे जियोडजैंगो के साथ स्पेटियालाइट के लिए विशिष्ट कॉन्फ़िगरेशन की आवश्यकता है?

Area.objects.all().distance(center) 

और कुछ करने के बजाय प्रयोग करने योग्य, मैं सिर्फ एक त्रुटि संदेश मिलता है: "ValueError: SQLite नहीं है भूगर्भीय समन्वय प्रणालियों पर रैखिक दूरी की गणना का समर्थन करें। "

क्या गलत है, क्या मुझे स्पैटियालाइट पर कुछ विशेष कॉन्फ़िगरेशन चाहिए या दस्तावेज़ीकरण सादा गलत है?

उत्तर

6

आपको स्पेटियालाइट के बारे में कुछ भी करने की आवश्यकता नहीं है, बल्कि आप जिस समन्वय प्रणाली (सिड) का उपयोग कर रहे हैं उसे बदल दें। स्पेटियालाइट केवल भौगोलिक समन्वय प्रणालियों पर दूरी गणना करता है, न कि geodetic। अपनी मॉडल परिभाषा में एसआरआईडी की जांच करें। वैकल्पिक रूप से आप पोस्टगिस बैकएंड पर भी स्विच कर सकते हैं।

+0

उत्कृष्ट, मैंने अपना ज्यामिति क्षेत्र 900913 पर सेट किया है और कम से कम कुछ काम किया है। मुझे यह पता लगाना होगा कि मुझे किस प्रक्षेपण की ज़रूरत है, लेकिन यह एक अच्छी शुरुआत है। धन्यवाद! –

+0

पॉइंटफ़िल्ल्ड() में ऐसा कैसे करें ?? –

संबंधित मुद्दे

 संबंधित मुद्दे