def import_offices(): Office.objects.all().delete() ds = DataSource('wfp/gis/data/wld_poi_facilities_wfp.shp') print(ds) lyr = ds[0] print lyr.fields # 'wfpid', u'place', u'facility', u'status', u'iso3', u'iso3_op', u'country' # u'locprecisi', u'latitude', u'longitude', u'wfpregion', u'nat_staff', # u'int_staff', u'lastcheckd', u'remarks', u'source', u'createdate', # u'updatedate', u'objectidol', u'precisiono', u'verifiedol' for feat in lyr: geom = feat.geom pnt = GEOSGeometry(geom.ewkt) wfpid = feat.get('wfpid') place = feat.get('place') facility = feat.get('facility') status = feat.get('status') country = feat.get('country') wfpregion = feat.get('wfpregion') lastcheckd = feat.get('lastcheckd') createdate = feat.get('createdate') updatedate = feat.get('updatedate') source = feat.get('source') office = Office(geom=pnt, wfpid=wfpid, place=place, facility=facility, wfpregion=wfpregion, lastcheckd=lastcheckd, source=source, status=status, country=country, createdate=createdate, updatedate=updatedate) office.save()
def save_offices(offices, doctor): """ :param offices: :param doctor: save Office object data to local database """ for office_data in offices: office = Office( id=office_data['id'], doctor=doctor, country=office_data['country'], state=office_data['state'], city=office_data['city'], address=office_data['address'], zip_code=office_data['zip_code'], ) office.save()