Django kwargs 扩展不适用于 startswith
Django kwargs expansion not working with startswith
我遇到了一个与 question 310732 非常相似的问题,按照那里的建议,我在我的 kwargs 生成中实现了 .format() 解决方案。
一个小例子的转储如下所示:
{'username_fragment_1__startswith': u'joey'}
其中 "username_fragment_1" 是有效的列名。
根据丹尼尔的要求提供更多详细信息:
query_sub = "(CASE WHEN ISNULL(%s) THEN 0 ELSE LENGTH(%s) END)"
query_string = query_sub % ((label_dict[frag],)*2)
results[frag] = DisplayNameSearchResult.objects.filter(**kwargs).extra(select={ 'proxylen':(query_string)},order_by=['proxylen']).values('agent_id', 'proxylen')
然而,当我 运行 单元测试时,我得到:
OperationalError: (1054, "Unknown column 'username_fragment_1__startswith' in 'field list'")
views.py 中的调用类似于:
MyClass.objects.filter(**kwargs)
感谢建议。
现在,今天早上它没有任何变化。作为 heisenbug 关闭。
我遇到了一个与 question 310732 非常相似的问题,按照那里的建议,我在我的 kwargs 生成中实现了 .format() 解决方案。
一个小例子的转储如下所示:
{'username_fragment_1__startswith': u'joey'}
其中 "username_fragment_1" 是有效的列名。
根据丹尼尔的要求提供更多详细信息:
query_sub = "(CASE WHEN ISNULL(%s) THEN 0 ELSE LENGTH(%s) END)"
query_string = query_sub % ((label_dict[frag],)*2)
results[frag] = DisplayNameSearchResult.objects.filter(**kwargs).extra(select={ 'proxylen':(query_string)},order_by=['proxylen']).values('agent_id', 'proxylen')
然而,当我 运行 单元测试时,我得到:
OperationalError: (1054, "Unknown column 'username_fragment_1__startswith' in 'field list'")
views.py 中的调用类似于:
MyClass.objects.filter(**kwargs)
感谢建议。
现在,今天早上它没有任何变化。作为 heisenbug 关闭。