У меня есть две модели, которые выглядят так в Django:
class Poll(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
question = models.CharField(max_length=200)
class Choice(models.Model):
question = models.ForeignKey(Poll, on_delete=models.CASCADE)
choice = models.CharField(max_length=120)
vote_count = models.IntegerField(default=0)
Каждый раз, когда пользователь добавляет новый опрос, он должен сохраняться в Elasticsearch. Способ сохранения должен выглядеть так:
{
"question": "Dogs or cats?",
"choices": [
{
"choice": "Dogs"
},
{
"choice": "Cats"
}
]
}
В моей модели опроса я создаю функцию индексирования следующим образом:
def indexing(self):
obj = PollIndex(
meta={'id': self.id},
question=self.question,
choices=self.choice_set,
)
obj.save()
return obj.to_dict(include_meta=True)
Я определяю индекс следующим образом:
class PollIndex(Document):
question = Text()
choices = Nested()
Однако я получаю сообщение об ошибке: AttributeError: 'RelatedManager' object has no attribute 'items'
Что я делаю не так?