在我的网站上,用户应该能够过滤数字,例如*123*321*
匹配“666 123 555 321 111”或LIKE '%123%321%'
.
默认情况下,django 的 orm 会转义%-sign。我可以使用正则表达式或原始查询,但有一些解决方法吗?
UPD:我会把它放在这里以显示另一种方式。
integer_search = [] # for colorizing found substrings
if actual['integer']:
integer_match = filter(None, actual['international'].split('*'))
integer_search = integer_match
integer_match = ''.join('%s[[:digit:]]*' % i for i in integer_match)
integers = integers.filter(international__regex=integer_match)