Как я могу использовать Fuse.js для поиска объектов в GeoJSON вне карты?

Я хочу "привязать" окно поиска, которое находится за пределами карты листовки, с помощью Fuse.js. (1) У меня есть функция GeoJSON, которая теперь может отображаться на карте. (2) Я также могу перечислить объекты из базы данных PostGIS из моего Django views.py.

Я хочу иметь возможность искать объекты и находить их в GeoJSON и выделять / изолировать их от других функций, пока функция поиска не будет завершена.

def trail_view(request):
   trails = Route.objects.all()
   trails_json = serialize('geojson' , trails, fields=('trail_type','trail_id', 'wkb_geometry',))
   trail_geojson = json.loads(trails_json)
   trail_geojson.pop('crs', None)
   trail_geojson = json.dumps(trail_geojson)

   return render(request, 'view_trail.html', {'trails':trails,
                                                   'trail_geojson':trail_geojson})

У меня есть окно поиска вне карты листовки следующим образом:

<div>
   <input id="search" name="search" type="text" class="query-search form-control input-sm" style="width:320px;" placeholder="Search route name...">
     <span>
        <button class="query-search btn btn-default btn-sm" type="button" />
          <span class="glyphicon glyphicon-search"></span>
        </button>
     </span>
</div>

Вот как я загружаю его в шаблон:

var geojsonFeature = {{ trail_geojson | safe}};
  L.geoJSON(geojsonFeature,{
      style:function(feature) {
        switch (feature.properties.trail_type) {
            case '1': return {color: "#2db22d"}; //Green
            case '2': return {color: "#1d4fd6"}; //Blue
            case '3': return {color: "#e3803d"}; //Orange
        }
    }
  }).addTo(map);

Я не могу найти учебник по Fuse.js. Если есть, пожалуйста, укажите мне на сайт:) Заранее спасибо!

0 ответов

Другие вопросы по тегам