Ben dokümanlar üzerine gittim, ve hatta bir kaç arama geri uçları oluşturduk ama "m hala gerçekten bunları samanlıkta yaptıklarımıza karıştı mı endeksleri miras alan sınıfınızda arama yaptığınız alanları araştırın. SearchIndex, indexes.Indexable veya şablonun içindeki metni arayan arka uç nedir? Birisi bana bunu açıklayabilir mi?Django Haystack. Şablon ve model endekslerinin sorumlulukları
Django haystack'te alanlar sorgulanması gereken tanımlayan bir sınıf şöyle (iyi ki Anladığım nasıl):
class ProductIndex(indexes.SearchIndex, indexes.Indexable):
text = indexes.CharField(document=True, use_template=True)
name = indexes.CharField(model_attr='title', boost=1.75)
description = indexes.CharField(model_attr='description')
short_description = indexes.CharField(model_attr='short_description')
def get_model(self):
return Product
def index_queryset(self, using=None):
"""Used when the entire index for model is updated."""
return self.get_model().objects.filter(active=True,
published_at__lte=datetime.now())
Ayrıca bir şablon oluşturacağız txt tha Bir şey yapacak - Ne olduğundan emin değilim. Arama arka ucunun arama algoritması sırasında bu şablonun üzerinden geçeceğini biliyorum.
{{ object.name }}
{{ object.description }}
{{ object.short_description }}
{% for related in object.related %}
{{ related.name }}
{{ related.description }}
{% endfor %}
{% for category in object.categories.all %}
{% if category.active %}
{{ category.name }}
{% endif %}
{% endfor %}
benim endeks sınıfı yok bazı alanları vardır şablonu görebileceğiniz gibi, ancak, bu arama arka ucu göre aranacaktır. Peki neden endekste alanlar var? Dizin sınıfı ve dizin şablonu ruloları nelerdir? Lütfen biri bunu bana açıklayabilir mi.
Seni tamamen anladığımdan emin değilim. Böyle bir arka uç (tercihen kodunda) bazı örnek ekleyin ve aklını karıştırıyor tam olarak ne ayrıntılı olarak açıklayabilir misiniz? Haystack'ın arka planda nasıl çalıştığını soruyor musunuz, genellikle bir özelliği nasıl kullanacağınız konusunda kafanız karışıyor mu? – yuvi
En iyi şekilde yuvi yapabilirdim. Ben tam endeks sınıfı ve indeks şablonun rulo üzerinde amacı ve hangi arka uç tarafından arandığını ne üzerinde sadece gerçekten karıştı. – user2734679
Bu çok daha açık. Sana yardım edebileceğime emin değilim, ama şimdi soru çok daha iyi. Umarım, bazı haystack ninja yakında gelecek! – yuvi