All Projects → vintasoftware → Django Zombodb

vintasoftware / Django Zombodb

Licence: mit
Easy Django integration with Elasticsearch through ZomboDB Postgres Extension

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Django Zombodb

Feedhq
FeedHQ is a web-based feed reader
Stars: ✭ 525 (+286.03%)
Mutual labels:  postgresql, elasticsearch, django
Usaspending Api
Server application to serve U.S. federal spending data via a RESTful API
Stars: ✭ 166 (+22.06%)
Mutual labels:  postgresql, elasticsearch, django
Transporter
Sync data between persistence engines, like ETL only not stodgy
Stars: ✭ 1,175 (+763.97%)
Mutual labels:  postgresql, elasticsearch
Adminer Custom
Customizations for Adminer, the best database management tool written in PHP.
Stars: ✭ 99 (-27.21%)
Mutual labels:  postgresql, elasticsearch
Docker Nginx Postgres Django Example
Example using Docker, Django, multiple Postgres databases, NginX, Gunicorn, pipenv, GitLab CI and tox.
Stars: ✭ 110 (-19.12%)
Mutual labels:  postgresql, django
Django Tsvector Field
Django field for tsvector (PostgreSQL full text search vector) with managed stored procedure and triggers.
Stars: ✭ 56 (-58.82%)
Mutual labels:  postgresql, django
Spring Examples
SpringBoot Examples
Stars: ✭ 67 (-50.74%)
Mutual labels:  postgresql, elasticsearch
Haproxy Configs
80+ HAProxy Configs for Hadoop, Big Data, NoSQL, Docker, Elasticsearch, SolrCloud, HBase, MySQL, PostgreSQL, Apache Drill, Hive, Presto, Impala, Hue, ZooKeeper, SSH, RabbitMQ, Redis, Riak, Cloudera, OpenTSDB, InfluxDB, Prometheus, Kibana, Graphite, Rancher etc.
Stars: ✭ 106 (-22.06%)
Mutual labels:  postgresql, elasticsearch
Project Dashboard With Django
Agile Project Management dashboard with Django REST and Vue.js
Stars: ✭ 25 (-81.62%)
Mutual labels:  postgresql, django
Tunnel
PG数据同步工具(Java实现)
Stars: ✭ 122 (-10.29%)
Mutual labels:  postgresql, elasticsearch
W3develops
The w3develops.org open source codebase - Learn, build, and meetup with other developers on DISCORD https://discord.gg/WphGvTT and YOUTUBE http://bit.ly/codingyt
Stars: ✭ 120 (-11.76%)
Mutual labels:  postgresql, django
Transformalize
Configurable Extract, Transform, and Load
Stars: ✭ 125 (-8.09%)
Mutual labels:  postgresql, elasticsearch
Aspnetcorenlog
ASP.NET Core NLog MS SQL Server PostgreSQL MySQL Elasticsearch
Stars: ✭ 54 (-60.29%)
Mutual labels:  postgresql, elasticsearch
Phalcon Vm
Vagrant configuration for PHP7, Phalcon 3.x and Zephir development.
Stars: ✭ 43 (-68.38%)
Mutual labels:  postgresql, elasticsearch
Docker Elk Tutorial
docker-elk-tutorial + django + logging
Stars: ✭ 69 (-49.26%)
Mutual labels:  elasticsearch, django
Texcavator
Text mining on the Royal Library newspaper corpus
Stars: ✭ 9 (-93.38%)
Mutual labels:  elasticsearch, django
Spring Boot 2.x Examples
Spring Boot 2.x code examples
Stars: ✭ 104 (-23.53%)
Mutual labels:  postgresql, elasticsearch
Dialogue.moe
Stars: ✭ 127 (-6.62%)
Mutual labels:  elasticsearch, django
Docker Tutorial
Docker 基本教學 - 從無到有 Docker-Beginners-Guide 教你用 Docker 建立 Django + PostgreSQL 📝
Stars: ✭ 906 (+566.18%)
Mutual labels:  postgresql, django
Django Rest Booking Api
A Restful api which allows you to book sports events or update existing odds.
Stars: ✭ 24 (-82.35%)
Mutual labels:  postgresql, django

============== django-zombodb

.. image:: https://badge.fury.io/py/django-zombodb.svg :target: https://badge.fury.io/py/django-zombodb :alt: PyPI Status

.. image:: https://travis-ci.org/vintasoftware/django-zombodb.svg?branch=master :target: https://travis-ci.org/vintasoftware/django-zombodb :alt: Build Status

.. image:: https://readthedocs.org/projects/django-zombodb/badge/?version=latest :target: https://django-zombodb.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status

.. image:: https://codecov.io/gh/vintasoftware/django-zombodb/branch/master/graph/badge.svg :target: https://codecov.io/gh/vintasoftware/django-zombodb :alt: Coverage Status

.. image:: https://img.shields.io/github/license/vintasoftware/django-zombodb.svg :alt: GitHub

Easy Django integration with Elasticsearch through ZomboDB <https://github.com/zombodb/zombodb>_ Postgres Extension. Thanks to ZomboDB, your Django models are synced with Elasticsearch at transaction time! Searching is also very simple: you can make Elasticsearch queries by just calling one of the search methods on your querysets. Couldn't be easier!

Documentation

The full documentation is at <https://django-zombodb.readthedocs.io>_.

Requirements

  • Python: 3.5, 3.6, 3.7
  • Django: 2.0, 2.1, 2.2
  • Postgres and Elasticsearch: same as ZomboDB current requirements <https://github.com/zombodb/zombodb#system-requirements>_

Quickstart

  1. Install ZomboDB (instructions here <https://github.com/zombodb/zombodb/blob/master/INSTALL.md>_)

  2. Install django-zombodb:

::

pip install django-zombodb
  1. Add the SearchQuerySet and the ZomboDBIndex to your model:

.. code-block:: python

from django_zombodb.indexes import ZomboDBIndex
from django_zombodb.querysets import SearchQuerySet

class Restaurant(models.Model):
    name = models.TextField()

    objects = models.Manager.from_queryset(SearchQuerySet)()

    class Meta:
        indexes = [
            ZomboDBIndex(fields=[
                'name',
            ]),
        ]
  1. Make the migrations:

::

python manage.py makemigrations
  1. Add django_zombodb.operations.ZomboDBExtension() as the first operation of the migration you've just created:

.. code-block:: python

import django_zombodb.operations

class Migration(migrations.Migration):

    dependencies = [
        ('restaurants', '0001_initial'),
    ]

    operations = [
        django_zombodb.operations.ZomboDBExtension(),  # <<< here
    ]
  1. Run the migrations (Postgres user must be SUPERUSER to create the ZomboDB extension):

::

python manage.py migrate
  1. Done! Now you can make Elasticsearch queries directly from your model:

.. code-block:: python

Restaurant.objects.filter(is_open=True).query_string_search("brazil* AND coffee~")

Full Example

Check <https://github.com/vintasoftware/django-zombodb/tree/master/example>_

Running Tests

You need to have Elasticsearch and Postgres instances running on default ports. Also, you need ZomboDB installed. Then just do:

::

python runtests.py

Security

Please check SECURITY.rst <SECURITY.rst>_. If you found or if you think you found a vulnerability please get in touch via admin AT vinta.com.br

Please avoid disclosing any security issue on GitHub or any other public website. We'll work to swiftly address any possible vulnerability and give credit to reporters (if wanted).

Commercial Support

This project is maintained by Vinta Software <https://www.vinta.com.br/?django-zombodb=1>_ and other contributors. We are always looking for exciting work, so if you need any commercial support, feel free to get in touch: [email protected]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].