Elasticsearch app for indexing GeoNode models via elasticsearch-dsl
Project description
# geonode-elasticsearch
This application serves as an interface to elasticsearch in geonode via elasticsearch-dsl. Additionally provides some management commands for an easier upgrade from django-haystack.
To use, add following to settings:
``` python
# elasticsearch-dsl settings
# Elasticsearch-dsl Backend Configuration. To enable,
# Set ES_SEARCH to True
# Run "python manage.py clear_haystack" (if upgrading from haystack)
# Run "python manage.py rebuild_index"
ES_SEARCH = strtobool(os.getenv('ES_SEARCH', 'False'))
if ES_SEARCH:
INSTALLED_APPS = (
'elasticsearch_app',
) + INSTALLED_APPS
ES_URL = os.getenv('ES_URL', 'http://127.0.0.1:9200/')
# Disable Haystack
HAYSTACK_SEARCH = False
# Avoid permissions prefiltering
SKIP_PERMS_FILTER = False
# Update facet counts from Haystack
HAYSTACK_FACET_COUNTS = False
```
This app will provide a search api at /api/<resourcetype>/search/
search.py contains definitions for the elasticsearch indices as well as functions to convert django models into form to go into elasticsearch.
views.py contains all the logic for running the search and providing facets
This application serves as an interface to elasticsearch in geonode via elasticsearch-dsl. Additionally provides some management commands for an easier upgrade from django-haystack.
To use, add following to settings:
``` python
# elasticsearch-dsl settings
# Elasticsearch-dsl Backend Configuration. To enable,
# Set ES_SEARCH to True
# Run "python manage.py clear_haystack" (if upgrading from haystack)
# Run "python manage.py rebuild_index"
ES_SEARCH = strtobool(os.getenv('ES_SEARCH', 'False'))
if ES_SEARCH:
INSTALLED_APPS = (
'elasticsearch_app',
) + INSTALLED_APPS
ES_URL = os.getenv('ES_URL', 'http://127.0.0.1:9200/')
# Disable Haystack
HAYSTACK_SEARCH = False
# Avoid permissions prefiltering
SKIP_PERMS_FILTER = False
# Update facet counts from Haystack
HAYSTACK_FACET_COUNTS = False
```
This app will provide a search api at /api/<resourcetype>/search/
search.py contains definitions for the elasticsearch indices as well as functions to convert django models into form to go into elasticsearch.
views.py contains all the logic for running the search and providing facets
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file geonode-elasticsearch-app-0.2.3.tar.gz
.
File metadata
- Download URL: geonode-elasticsearch-app-0.2.3.tar.gz
- Upload date:
- Size: 11.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2410ffa4f8da1d8b1022944658b105e4bdc876cf2082624d7cdd6a9317fca8b1 |
|
MD5 | b62bdf2fef95738535804ecaf5ef9397 |
|
BLAKE2b-256 | 7ef6069a9ae68c82e69ba67936b70562e0418cde125299c05a4cd0b0dff7583e |