2012-01-24 43 views
1

我正在使用干草堆进行搜索。默认情况下,它会搜索所有模型,然后提供索引的模型清单以优化搜索。有没有办法我可以重写这个功能,即我可以让它在默认情况下在特定的模型中搜索?任何帮助表示赞赏。如何在干草堆中默认检查特定模型?

回答

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'), 
)