gpt4 book ai didi

python - 如何过滤 django grappelli 中的自动完成结果?

转载 作者:太空狗 更新时间:2023-10-29 21:40:15 26 4
gpt4 key购买 nike

我们有一个软删除方案,我们只是将内容标记为已删除,然后在不同的地方过滤掉已删除的内容。我正在尝试弄清楚如何从 grapelli 自动完成建议中过滤掉已删除的建议。

最佳答案

最后我选择了这个:

from grappelli.views.related import AutocompleteLookup

class YPAutocompleteLookup(AutocompleteLookup):
""" patch grappelli's autocomplete to let us control the queryset
by creating a autocomplete_queryset function on the model """
def get_queryset(self):
if hasattr(self.model, "autocomplete_queryset"):
qs = self.model.autocomplete_queryset()
else:
qs = self.model._default_manager.all()
qs = self.get_filtered_queryset(qs)
qs = self.get_searched_queryset(qs)
return qs.distinct()

它可以通过覆盖相关的 url 安装:

url(r'^grappelli/lookup/autocomplete/$', YPAutocompleteLookup.as_view(), name="grp_autocomplete_lookup"),

确保这在您的网址中位于 Grappelli 之前。

关于python - 如何过滤 django grappelli 中的自动完成结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17852308/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com