Skip to main content

UNKNOWN

Project description

# 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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

django_elastic-0.0.1-py2-none-any.whl (17.3 kB view details)

Uploaded Python 2

File details

Details for the file django_elastic-0.0.1-py2-none-any.whl.

File metadata

File hashes

Hashes for django_elastic-0.0.1-py2-none-any.whl
Algorithm Hash digest
SHA256 0310fc5afd895172b5c0fb963c87f42b4681444fb084ca8fb18493d698920d39
MD5 527858466e65a658a310c503e92abb1a
BLAKE2b-256 6afa3a9b1b7c0c07f631d5af6b3bbb2725b7d6e6ac8d6cd124e23488ab0eeda2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page