跳转到主要内容

将Elasticsearch DSL与Django REST framework集成。

项目描述

以尽可能短的方式将Elasticsearch DSLDjango REST framework集成,尽可能少地付出努力。

该包提供了视图、序列化器、过滤器后端、分页和其他实用附加组件。

您应使用django-elasticsearch-dsl来定义您的Elasticsearch文档。

PyPI Version Supported Python versions Build Status Documentation Status GPL-2.0-only OR LGPL-2.1-or-later Coverage

文档

文档可在Read the Docs上找到。

请确保阅读常见问题解答

先决条件

  • Django 2.2, 3.1和3.2。

  • Python 3.6, 3.7, 3.8和3.9。

  • Elasticsearch 6.x, 7.x。对于旧版本,请使用django-elasticsearch-dsl-drf版本0.18。

主要功能和亮点

你需要类似的GraphQL工具吗?请查看 graphene-elastic

演示

在线演示

检查 实时演示应用(Django 3.1 + Django REST Framework 3.12 + Elasticsearch 7.5),托管在Heroku和bonsai.io。

本地演示

一个前端演示(基于React)可用。有关更多信息,请参阅 专用文档

为了启动评估,请在本地克隆存储库并运行 docker-compose

docker-compose up

它将在以下位置设置

安装

  1. 从 PyPI 安装最新稳定版本

    pip install django-elasticsearch-dsl-drf

    或从 GitHub 安装最新稳定版本

    pip install https://github.com/barseghyanartur/django-elasticsearch-dsl-drf/archive/stable.tar.gz
  2. rest_frameworkdjango_elasticsearch_dsldjango_elasticsearch_dsl_drf 添加到 INSTALLED_APPS

    INSTALLED_APPS = (
        # ...
        # REST framework
        'rest_framework',
    
        # Django Elasticsearch integration
        'django_elasticsearch_dsl',
    
        # Django REST framework Elasticsearch integration (this package)
        'django_elasticsearch_dsl_drf',
        # ...
    )

快速入门

了解 django-elasticsearch-dsl-drf 可能最简单的方法是阅读 快速入门教程

将其视为一个低知识入门水平的Elasticsearch与Django集成的指南。

测试

项目已覆盖测试。

要测试所有支持的Python/Django版本,请键入

tox

要针对特定环境进行测试,请键入

tox -e py38-django30

要测试您的当前工作环境,请键入

./runtests.py

要在您的当前工作环境中运行单个测试,请键入

./runtests.py src/django_elasticsearch_dsl_drf/tests/test_filtering.py

或者

./manage.py test django_elasticsearch_dsl_drf.tests.test_ordering

要在您的当前工作环境中运行给定测试模块中的单个测试类,请键入

./runtests.py src/django_elasticsearch_dsl_drf/tests/test_suggesters.py::TestSuggesters

假设您已安装所有必需的要求。如果没有,请首先安装测试要求

pip install -r examples/requirements/test.txt

编写文档

请保持以下层次结构。

=====
title
=====

header
======

sub-header
----------

sub-sub-header
~~~~~~~~~~~~~~

sub-sub-sub-header
^^^^^^^^^^^^^^^^^^

sub-sub-sub-sub-header
++++++++++++++++++++++

sub-sub-sub-sub-sub-header
**************************

许可证

GPL-2.0-only OR LGPL-2.1-or-later

支持

对于任何问题,请联系作者部分提供的电子邮件。

作者

Artur Barseghyan <artur.barseghyan@gmail.com>

项目详细信息


版本历史 发布通知 | RSS 源

下载文件

下载适用于您平台的文件。如果您不确定选择哪一个,请了解有关安装包的更多信息。

源分发

django-elasticsearch-dsl-drf-0.22.5.tar.gz (99.1 kB 查看哈希值)

上传时间

构建分发

django_elasticsearch_dsl_drf-0.22.5-py2.py3-none-any.whl (151.9 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面