gpt4 book ai didi

python - 在 Django search_fields 上实现自定义函数

转载 作者:太空宇宙 更新时间:2023-11-04 00:58:24 25 4
gpt4 key购买 nike

我有一个带有 ISBN 字段的模型。ISBN(国际标准书号)可能是 ISBN10(10 位)或 ISBN13(13 位)。我可以使用自定义函数将 10 转换为 13,将 13 转换为 10。重点是我希望 Django 在 ISBN 字段中搜索,无论它是 ISBN10 还是 ISBN13(该字段都接受)。为此,有必要在某处包含转换函数。例如:如果我搜索的值是 8489691207,我希望 Django 搜索该值并将转换后的值转换为 ISBN13 (9788489691209)。

我正在使用 Django 1.8 和 Python 2.7

最佳答案

您可以覆盖 get_search_results模型管理员的方法。

class BookAdmin(admin.ModelAdmin):
def get_search_results(self, request, queryset, search_term):
if is_isbn10(search_term):
search_term = convert_to_isbn13(search_term)
queryset, use_distinct = super(BookAdmin, self).get_search_results(request, queryset, search_term)

self.model.objects.filter(age=search_term_as_int) 返回查询集,use_distinct

关于python - 在 Django search_fields 上实现自定义函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33963100/

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