我是Python新手,所以请原谅我回答这个新手问题。我有一个类和一个函数:
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
方法添加其他参数 - 它们将被传递到数据源 __init__
:
mvt = requestHandler(request, zoom, x, y)
datasource = mapnik.Python(factory='Datasource', mvt=mvt)
向Datasource
类__init__
方法定义添加参数,并使用它在类实例中保存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)
关于python - 如何将变量传递给mapnik数据源类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21973478/