Skip to main content
# UNDER DEVELOPEMNT

## django-elastic (delastic)

* Simple way to index/delete/update django models
* Queries Elasticsearch only, not hitting the Django database
* Define the mapping with elasticsearch-dsl, defaults to basic field types.
* Override field values.
* Define if a model instance should be index or not


TODO:

* Search view:
* Elasticsearch based pagination
* Elasticsearch-dsl queries
* Adds search filters and possible values in the template context

* Support multiple models per doc_type



## Requirements

* elasticsearch-dsl


## Installation

pip install django-elastic


## Settings

INSTALLED_APPS = (
...
'delastic',
)

Optional elasticsearch settings, Defaults to the following

DJANGO_ELASTIC = {
'hosts': ['localhost'],
'port': 9200,
'index': 'django',
}


## Model

An example model

class Article(models.Model):
title = models.CharField(max_length=500, blank=True, null=True)
desc = models.TextField(blank=True, null=True)
created = models.DateTimeField(blank=True, null=True)
updated = models.DateTimeField(blank=True, null=True)
image = models.URLField(max_length=500, blank=True, null=True)
url = models.URLField(max_length=500, blank=True, null=True)

active = models.BooleanField(default=True)

def __unicode__(self):
return self.title


## Indexer

The simplest example of an indexer for the model.

from delastic.indexer import ModelIndex

class ArticleIndex(ModelIndex):
class Meta:
model = Article


## View

TODO...



## Management Commands

Create mapping in elasticsearch

./manage.py create_elastic_mapping


Index models in elasticsearch

./manage.py create_elastic_index

Release files for django-elastic 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for django-elastic 0.0.1
File Interpreter ABI Platform
django_elastic-0.0.1-py2-none-any.whl Python 2 none any Details

Release files / django_elastic-0.0.1-py2-none-any.whl

Download URL django_elastic-0.0.1-py2-none-any.whl
Size 17.3 kB
Tags Python 2
SHA-256 checksum
How to use checksums
0310fc5afd895172b5c0fb963c87f42b4681444fb084ca8fb18493d698920d39
BLAKE2b-256 checksum
How to use checksums
6afa3a9b1b7c0c07f631d5af6b3bbb2725b7d6e6ac8d6cd124e23488ab0eeda2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.0.1 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page