标签:应用 ice api number app 快速 registry targe django信号
Django Elasticsearch DSL是一个软件包,允许在elasticsearch中索引Django模型。它是作为Elasticsearch-dsl-py的封装而构建的, 因此您可以使用elasticsearch-dsl-py团队开发的所有功能。
您可以在https://django-elasticsearch-dsl.readthedocs.io上查看完整文
基于elasticsearch-dsl-py,因此您可以使用Search类进行查询。
Django信号接收器处于保存和删除状态,以保持Elasticsearch同步。
从Django模型字段中的Elasticsearch自动映射。
复杂字段类型支持(ObjectField,NestedField)。
使用并行索引快速建立索引。
Requirements
Elasticsearch兼容性:该库与5.x以后的所有Elasticsearch版本兼容,但是您必须使用匹配的主要版本:
对于Elasticsearch 7.0及更高版本,请使用该库的主要版本7(7.x.y)。
对于Elasticsearch 6.0及更高版本,请使用该库的主要版本6(6.x.y)。
对于Elasticsearch 5.0和更高版本,请使用库的主要版本0.5(0.5.x)。
1
|
# Elasticsearch 7.x
|
安装 django-elasticsearch-dsl
1
|
pip install django-elasticsearch-dsl
|
然后添加 django-elasticsearch-dsl 到 INSTALLED_APPS
1
|
INSTALLED_APPS = [
|
必须在django settings 中定义 ELASTICSEARCH_DSL
1
|
ELASTICSEARCH_DSL={
|
然后将ELASTICSEARCH_DSL传递到elasticsearch-dsl-py.connections.configure(详细参数请看)。
### 生命要被索引的模型表
model.py
1
|
class NcInfo(models.Model):
|
要使该模型与Elasticsearch一起使用,请创建django_elasticsearch_dsl.Document的子类,在Document类中创建一个Index类以定义您的Elasticsearch索引,名称,设置等,最后使用Registry.register_document装饰器注册该类。 它需要在您的应用目录中的documents.py中定义Document类。
创建document.py
1
|
from django_elasticsearch_dsl import Document
|
要创建并填充Elasticsearch索引和映射,请使用search_index命令:
python| Django Elasticsearch DSL
标签:应用 ice api number app 快速 registry targe django信号
原文地址:https://www.cnblogs.com/huangjiangyong/p/14089113.html