Changeset 5751
- Timestamp:
- 07/23/07 03:47:40 (1 year ago)
- Files:
-
- django/branches/gis/django/contrib/gis/db/models/manager.py (modified) (1 diff)
- django/branches/gis/django/contrib/gis/db/models/query.py (modified) (2 diffs)
- django/branches/gis/django/contrib/gis/sitemaps.py (added)
- django/branches/gis/django/contrib/gis/templates (added)
- django/branches/gis/django/contrib/gis/templates/gis (added)
- django/branches/gis/django/contrib/gis/templates/gis/kml.xml (added)
- django/branches/gis/django/contrib/sitemaps/__init__.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/branches/gis/django/contrib/gis/db/models/manager.py
r4884 r5751 7 7 def get_query_set(self): 8 8 return GeoQuerySet(model=self.model) 9 10 def kml(self, field_name): 11 return self.get_query_set().kml(field_name) django/branches/gis/django/contrib/gis/db/models/query.py
r5008 r5751 1 1 from django.db.models.query import Q, QuerySet 2 from django.db import backend 3 from django.contrib.gis.db.models.fields import GeometryField 2 4 from django.contrib.gis.db.models.postgis import parse_lookup 5 from django.db.models.fields import FieldDoesNotExist 3 6 import operator 4 7 … … 34 37 clone._filters = clone._filters & reduce(operator.and_, map(mapper, args)) 35 38 return clone 39 40 def kml(self, field_name): 41 field = self.model._meta.get_field(field_name) 42 43 field_col = "%s.%s" % (backend.quote_name(self.model._meta.db_table), 44 backend.quote_name(field.column)) 45 46 return self.extra(select={'kml':'AsKML(%s,6)' % field_col}) django/branches/gis/django/contrib/sitemaps/__init__.py
r5492 r5751 89 89 return getattr(item, self.date_field) 90 90 return None 91 92 93 class KMLSitemap(Sitemap): 94 """ 95 A minimal hook to 96 """ 97 def __init__(self, locations=None): 98 if locations is None: 99 self.locations = [] 100 else: 101 self.locations = locations 102 103 def items(self): 104 return self.locations 105 106 def location(self, obj): 107 urlresolvers.reverse('django.contrib.gis.sitemaps.kml', 108 kwargs={'label':obj[0], 109 'field':obj[1]}) 110 111
