Я использую Django Elasticsearch версии 6.1.0 и сейчас получаю такую ошибку:
django_elasticsearch_dsl.exceptions.ModelFieldNotMappedError:
Cannot convert model field 'price' to an Elasticsearch field
Вот мой models.py
class Product(models.Model):
description = models.CharField(max_length=100)
price = models.DecimalField(max_digits=9, decimal_places=2)
quantity = models.IntegerField()
а вот и documents.py
from django_elasticsearch_dsl import DocType, Index
from crudapp.models import Product
product = Index('products')
@product.doc_type
class ProductDocument(DocType):
class Meta:
model = Product
fields = ['description', 'price', 'quantity']
Кто-нибудь может мне с этим помочь ?
Вот класс продукта pastebin.com/rWYajndz И мой индекс не существует в ES





Десятичное поле, которое вызывает эту ошибку. удалите его из полей и сделайте что-нибудь вроде этого.
from django_elasticsearch_dsl import DocType, Index,fields
class ProductDocument(DocType):
price = FloatField(attr=None, **elasticsearch_properties)
class Meta:
. . .. . . . .
Можешь показать свой класс
Product? А ваш индекс уже существует в ES? Если да, можете ли вы показать его отображение?