def data_as_kml(request, geoids, format='kml'): tables = get_tables_for_request(request) geoid_list = filter(lambda g: bool(g), geoids.split(',')) boundaries = dict((b.external_id, b) for b in Boundary.objects.filter(external_id__in=geoid_list)) json_data = dict((j['geoid'], j) for j in utils.fetch_geographies(geoid_list)) labelset = mongoutils.get_labelset() placemarks = [ _create_placemark_dict(boundaries[geoid], json_data[geoid], tables, labelset) for geoid in geoid_list ] if format == 'kmz': render = render_to_kmz else: render = render_to_kml return render('gis/kml/placemarks.kml', {'places' : placemarks})
def data_as_csv(request, geoids): tables = get_tables_for_request(request) labelset = mongoutils.get_labelset() response = HttpResponse(mimetype="text/csv") w = csv.writer(response) w.writerow(_csv_row_header(tables, labelset)) geoids_list = filter(lambda g: bool(g), geoids.split(',')) for g in utils.fetch_geographies(geoids_list): csvrow = _csv_row_for_geography(g, tables, labelset) w.writerow(csvrow) now = datetime.now() date_string = "%s-%s-%s-%s" % (now.year, now.month, now.day, now.microsecond) response['Content-Disposition'] = "attachment; filename=ire-census-%s.csv" % date_string return response
def data_as_csv(request, geoids): tables = get_tables_for_request(request) labelset = mongoutils.get_labelset() response = HttpResponse(mimetype="text/csv") w = csv.writer(response) w.writerow(_csv_row_header(tables, labelset)) geoids_list = filter(lambda g: bool(g), geoids.split(',')) for g in utils.fetch_geographies(geoids_list): csvrow = _csv_row_for_geography(g, tables, labelset) w.writerow(csvrow) now = datetime.now() date_string = "%s-%s-%s-%s" % (now.year, now.month, now.day, now.microsecond) response[ 'Content-Disposition'] = "attachment; filename=ire-census-%s.csv" % date_string return response
def data_as_kml(request, geoids, format='kml'): tables = get_tables_for_request(request) geoid_list = filter(lambda g: bool(g), geoids.split(',')) boundaries = dict( (b.external_id, b) for b in Boundary.objects.filter(external_id__in=geoid_list)) json_data = dict( (j['geoid'], j) for j in utils.fetch_geographies(geoid_list)) labelset = mongoutils.get_labelset() placemarks = [ _create_placemark_dict(boundaries[geoid], json_data[geoid], tables, labelset) for geoid in geoid_list ] if format == 'kmz': render = render_to_kmz else: render = render_to_kml return render('gis/kml/placemarks.kml', {'places': placemarks})