Python 如何将变量传递给mapnik数据源类?
我是python新手,所以请原谅我这个新手问题。我有一个类和一个函数:Python 如何将变量传递给mapnik数据源类?,python,mapnik,Python,Mapnik,我是python新手,所以请原谅我这个新手问题。我有一个类和一个函数: class Datasource(mapnik.PythonDatasource): def __init__(self): super(Datasource, self).__init__() def features(self, query): return mapnik.PythonDatasource.wkb_features(mvt) def tileLayer(
class Datasource(mapnik.PythonDatasource):
def __init__(self):
super(Datasource, self).__init__()
def features(self, query):
return mapnik.PythonDatasource.wkb_features(mvt)
def tileLayer(request, version, shapefile_id, zoom, x, y):
mvt = requestHandler(request, zoom, x, y)
datasource = mapnik.Python(factory='Datasource')
调用
mapnik.Python(factory='Datasource')
时,如何将mvt
变量传递给Datasource
类?您可以向mapnik.Python
方法添加额外的参数-它们将被传递给Datasource\uu init\uuu
:
mvt = requestHandler(request, zoom, x, y)
datasource = mapnik.Python(factory='Datasource', mvt=mvt)
将参数添加到Datasource
class\uuuuu init\uuuuu
方法定义中,并使用它在类实例中保存mvt
:
class Datasource(mapnik.PythonDatasource):
def __init__(self, mvt):
super(Datasource, self).__init__()
self.mvt = mvt
def features(self, query):
return mapnik.PythonDatasource.wkb_features(self.mvt)