我正在使用乾草堆進行搜索。默認情況下,它會搜索所有模型,然後提供索引的模型清單以優化搜索。有沒有辦法我可以重寫這個功能,即我可以讓它在默認情況下在特定的模型中搜索?任何幫助表示讚賞。如何在乾草堆中默認檢查特定模型?
1
A
回答
1
你可以override ModelSearchForm做到這一點,嘗試像下面這樣,用你希望默認搜索的模型替換app_label.model_name。
class CustomModelSearchForm(ModelSearchForm):
def __init__(self, *args, **kwargs):
super(CustomModelSearchForm, self).__init__(*args, **kwargs)
self.fields['models'].initial = ["app_label.model_name",]
urlpatterns = patterns('haystack.views',
url(r'^$', SearchViewg(form_class=CustomModelSearchForm, name='haystack_search'),
)
2
您可以使用這些模型方法從SearchQuerySet:
http://docs.haystacksearch.org/dev/searchqueryset_api.html#models
或使用保留的字段名django_ct這樣的:
SearchQuerySet().filter(django_ct='app_name.model_name')
相關問題
- 1. 按模型類型查找乾草堆結果的數量?
- 2. 如何檢查乾草堆中針頭的零位和空串?
- 3. 在乾草堆中顯示模式
- 4. 在現有模板上的乾草堆
- 5. 在乾草堆中搜索不同的模型whoosh
- 6. 如何在乾草堆中的查詢中包含過濾器?
- 7. 如何與在Django乾草堆(呼呼)
- 8. 視圖中的乾草堆
- 9. 我該如何在django中使用拼寫檢查(帶有whoosh的乾草堆)?
- 10. 修改乾草堆查詢語法?
- 11. Stristr未在乾草堆中找到針
- 12. 在乾草堆中的MySQL搜索鍵
- 13. 骨幹類模型不繼承默認
- 14. 如何禁用特定類的默認模型綁定
- 15. 當strip_tags()燒燬乾草堆
- 16. Django乾草堆SearchQuerySet到QuerySet
- 17. 乾草堆的用途
- 18. 如何幹草堆檢索與elasticsearch的所有指標
- 19. 乾草堆上沒有模塊命名查詢
- 20. 如何使用db查詢過濾乾草堆結果
- 21. 乾草堆+飛快移動的根:錯誤更新<appname>使用默認
- 22. 如何使用preg_match_all在乾草堆中找到複數針?
- 23. 在1個特定模型中忽略SailsJS中的默認模型屬性
- 24. Django乾草堆與羣組自定義查詢
- 25. 乾草堆簡化中的數字
- 26. 提升不工作在Django乾草堆
- 27. 我如何覆蓋默認的骨幹模型?
- 28. 默認模型綁定器
- 29. 骨幹 - 聲明默認參數在模型中提取
- 30. Django-Haystack:瞭解乾草堆中數據模板的使用