Django Haystack с упорядоченным поиском возвращает пустой набор запросов, пока существуют данные
Я делаю проект на Python, остальные рамки Django. Я использую стог сена SearchQuerySet. Мой код здесь.
from haystack import indexes
from Medications.models import Salt
class Salt_Index(indexes.SearchIndex, indexes.Indexable):
text = indexes.CharField(document=True, use_template=True)
name = indexes.CharField(model_attr='name',null=True)
slug = indexes.CharField(model_attr='slug',null=True)
if_i_forget = indexes.CharField(model_attr='if_i_forget',null=True)
other_information = indexes.CharField(model_attr='other_information',null=True)
precautions = indexes.CharField(model_attr='precautions',null=True)
special_dietary = indexes.CharField(model_attr='special_dietary',null=True)
brand = indexes.CharField(model_attr='brand',null=True)
why = indexes.CharField(model_attr='why',null=True)
storage_conditions = indexes.CharField(model_attr='storage_conditions',null=True)
side_effects = indexes.CharField(model_attr='side_effects',null=True)
def get_model(self):
return Salt
def index_queryset(self, using=None):
return self.get_model().objects.all()
и мой файл views.py -
from django.views.generic import View
from haystack.query import SearchQuerySet
from django.core import serializers
class Medication_Search_View(View):
def get(self,request,format=None):
try:
get_data = SearchQuerySet().all()
print get_data
serialized = ss.serialize("json", [data.object for data in get_data])
return HttpResponse(serialized)
except Exception,e:
print e
мой python manage.py rebuild_index работает нормально (показывает "Индексирование 2959 солей"), но в моем файле views.py SearchQuerySet() возвращает пустой набор запросов...
Я очень переживаю за это. Пожалуйста, помогите мне, друзья, если вы знаете причину получения пустого набора запросов, пока у меня есть данные в моей модели Salt.
2 ответа
Моя проблема решена сейчас. Проблема была в том, что я написал имя приложения заглавными буквами, а таблицы базы данных были сделаны маленькими буквами (myapp_Student). так что это создавало проблему при поиске в базе данных.
Вы должны проверить имя приложения, оно чувствительно к регистру. Попробуйте написать имя приложения маленькими буквами.