我在Django Haystack 1.2.5中遇到了一些問題。我需要提高一個領域,但顯然不起作用。我正在使用Solr 1.4.1。Django Haystack - 如何增強字段?
我的索引:
class JobsTextIndex(indexes.SearchIndex):
text = indexes.CharField(document=True, use_template=True)
job_title = indexes.CharField(model_attr='job_title', boost=1.50)
job_description = indexes.CharField(model_attr='job_description')
country_ad = indexes.CharField(model_attr='country_ad')
zone_ad = indexes.CharField(model_attr='zone_ad', faceted=True)
location_ad = indexes.CharField(model_attr='location_ad', faceted=True)
date_inserted = indexes.DateTimeField(model_attr='date_inserted')
def index_queryset(self):
"""Used when the entire index for model is updated."""
return JobsadsText.objects.filter(date_inserted__lte=datetime.datetime.now())
我在JOB_TITLE 「助推= 1.50」,但這顯然它不工作,這是由Solr中生成了什麼:
INFO: [core0] webapp=/solr path=/select/ params={facet=on&sort=date_inserted+desc&fl=*+score&start=0&q=arquiteto&facet.field=location_ad_exact&facet.field=zone_ad_exact&wt=json&fq=django_ct:(myapp.jobstext)&rows=20} hits=65 status=0 QTime=5
的查詢我做的是這個:
sqs = SearchQuerySet().facet('zone_ad').facet('location_ad').order_by('-date_inserted')
有人可以給我什麼,我需要得到草堆升壓工作的線索?
最好的問候,
更新1:我需要給的 「JOB_TITLE」 領域的重要性。例如,如果我正在搜索單詞「程序員」,我需要首先顯示按日期排序的「job_title」字段中包含「程序員」的結果,然後顯示結果中包含「程序員」字樣的結果「job_description」字段。 Haystack助力是實現這一目標的正確工具?
我有完全相同的問題:我想提高一個字段,但boost參數沒有做任何事情。在查詢集上調用.boost()方法只會產生非常不可預知的結果。你有沒有想出一個解決方案? –
@mixedCase,我還沒有提升工作。在我的情況下,我唯一的選擇是使用「dismax」Solr功能進行原始查詢,但我已經沒有時間閱讀更多關於Solr ... –