def setUp(self): User.objects.create_user("segalle", email=None, password="******") User.objects.create_user("moshe", email=None, password="******") p = Place() p.vendor_id = 1000 p.data = { "city": "\u05d9\u05e8\u05d5\u05e9\u05dc\u05d9\u05dd", "name": "\u05e9\u05d9\u05da \u05d2'\u05e8\u05d0\u05d7", "district": "\u05d9\u05e8\u05d5\u05e9\u05dc\u05d9\u05dd", "phones": "02-5871923", "notes": "", "subdistrict": "\u05d9\u05e8\u05d5\u05e9\u05dc\u05d9\u05dd", "days": [ "8:00-17:00", "8:00-17:00", "8:00-17:00", "8:00-17:00", "8:00-13:00", "\u05e1\u05d2\u05d5\u05e8" ], "address": "\u05de\u05e8\u05db\u05d6 \u05e8\u05e4\u05d5\u05d0\u05d9", "owner": "\u05e2\u05d9\u05e8\u05d9\u05d9\u05ea \u05d9\u05e8\u05d5\u05e9\u05dc\u05d9\u05dd", "id": 1000 } p.save() self.pm = Placemark() self.pm.place = p self.pm.city = "\u05d9\u05e8\u05d5\u05e9\u05dc\u05d9\u05dd" self.pm.address = "\u05de\u05e8\u05db\u05d6 \u05e8\u05e4\u05d5\u05d0\u05d9" self.pm.lat = 31.15 self.pm.lng = 32.16 self.pm.save() self.pm1 = Placemark() self.pm1.place = p self.pm1.city = "\u05d9\u05e8\u05d5\u05e9\u05dc\u05d9\u05dd" self.pm1.address = "\u05de\u05e8\u05db\u05d6 \u05e8\u05e4\u05d5\u05d0\u05d9" self.pm1.lat = 31.25 self.pm1.lng = 32.26 self.pm1.save() self.pm2 = Placemark() self.pm2.place = p self.pm2.city = "\u05d9\u05e8\u05d5\u05e9\u05dc\u05d9\u05dd" self.pm2.address = "\u05de\u05e8\u05db\u05d6 \u05e8\u05e4\u05d5\u05d0\u05d9" self.pm2.lat = 31.35 self.pm2.lng = 32.36 self.pm2.save()
def handle(self, *args, **options): if len(args) <= 0: raise CommandError('please specify file name') if not os.path.exists(args[0]): raise CommandError("file %s doesn't exist" % args[0]) with open(args[0], 'r') as f: result = json.load(f) counter = Counter() try: for i in result: try: place = Place.objects.get(vendor_id=i['id']) except Place.DoesNotExist: print "%s place id doesn't exist" % i['id'] counter["badid"] += 1 continue counter["Valid locations"] += 1 geo_result = geo_code(i['address'], i['city']) if geo_result["status"] != "OK": counter[geo_result["status"]] += 1 continue print "results for station #%s" % (i['id']) for l in geo_result["results"]: marker = Placemark() marker.place = place marker.city = i['city'] marker.address = i['address'] location = l["geometry"]["location"] marker.lat = location["lat"] marker.lng = location["lng"] try: marker.save() counter["Newly added"] += 1 print "\t %f ,%f saved successfully" % (marker.lat, marker.lng) except IntegrityError: counter["Already exist"] += 1 print "\t %f ,%f record is not unique" % (marker.lat, marker.lng) continue print "import markers completed" finally: for k, v in counter.items(): print k, v
def addplacemark(request): if not request.method == 'POST': return HttpResponseNotAllowed("Wrong request method") if Placemark.objects.filter(place__id=request.POST['place'], address=request.POST['address'], city=request.POST['city'], lat=request.POST['lat'], lng=request.POST['lng']).exists(): return HttpResponse("exists") newplacemark = Placemark(); newplacemark.place_id = int(request.POST['place']) newplacemark.city = request.POST['city'] newplacemark.address = request.POST['address'] newplacemark.lat = float(request.POST['lat']) newplacemark.lng = float(request.POST['lng']) newplacemark.save() newvote = Vote() newvote.placemark = newplacemark newvote.user = request.user newvote.positive = 'True' newvote.save() return HttpResponse(newplacemark.id)