Поиск в нескольких таблицах с Django-Haystack
-
18-09-2019 - |
Вопрос
У меня есть модели ресторана и комментариев, показанные ниже. Модель комментариев имеет иностранную кладку в ресторан. Как я могу выполнить поиск в некоторых ресторанных областях и в области комментариев модели комментариев, которая возвращает список экземпляров ресторана?
Спасибо
class Restaurant(models.Model):
name = models.CharField(max_length=100)
country=models.ForeignKey(Country)
city=models.ForeignKey(City)
street=models.CharField(max_length=100)
street_number=models.PositiveSmallIntegerField()
postal_code=models.PositiveIntegerField(blank=True, null=True)
slug = models.SlugField(unique=True)
class Comment(models.Model):
user = models.ForeignKey(User)
restaurant = models.ForeignKey(Restaurant)
submit_date = models.DateTimeField(blank = True, null = False)
comment = models.TextField()
Решение
Я думаю, вы должны прочитать руководство: http://django-haystack.readthedocs.org/en/latest/tutorial.html
Ищите мультиплату:
class RestaurantIndex(indexes.SearchIndex):
comments = indexes.MultiValueField()
def prepare_comments(self, obj):
return [a for a in obj.comment_set.all()]
Не связан с StackOverflow