Getting a county by name

Again, we can use a URL variable to collect a string, and use the string supplied for a query filter. If Wash is used as the URL variable county_name, the query will find all counties with names that start with Wash:

@app.route('/nba/api/v0.1/county/<county_name>', methods=['GET'])
def get_county_name(county_name):
counties = session.query(County).filter(County.name.like(county_name+"%")).all()
data = [{"type": "Feature",
"properties":{"name":county.name, "state":county.state.name},
"geometry":{"type":"MultiPolygon",
"coordinates":[shapely.geometry.geo.mapping(to_shape(county.geom))["coordinates"]]},
} for county in counties]
return jsonify({"type": "FeatureCollection","features":data})

The filter method can be used on spatial fields as well as non-spatial fields. 

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset