擅长:python、mysql、java
<p><em>@Nikko有一个非常好的面向DRF的解决方案!</em></p>
<p>实际上,我以一种非常类似的方式解决了这个问题,通过为geoserver的特定响应创建一个解析器,它从<code>features</code>返回一个<code>geos.GeometryCollection</code>:</p>
<pre><code>def parse_feature_collection(feature_collection: dict):
"""
Parses a WFS response from GeoServer and creates a GeometryCollection from it.
"""
geometries = [
GEOSGeometry(json.dumps(feature.get('geometry')))
for feature in feature_collection.get('features')
]
return GeometryCollection(tuple(geometries), srid=4326)
</code></pre>
<p>然后在一个<strong>celery任务中使用它来更新相应的模型字段,并在实例上执行一些其他耗时的方法(栅格化数据并应用一些计算)。在</p>