【发布时间】:2013-12-14 11:15:23
【问题描述】:
我开始使用 Django,我的应用程序中有这段代码:
filtro = "marca:samsung_modelo:s3"
mifiltro = filtro.split('_')
cadena = '0'
for caracteristica in mifiltro:
if not cadena == '0':
cadena += ", "
elif cadena == '0':
cadena = ''
aux = caracteristica.split(':')
cadena += aux[0] + "='" + aux[1] + "'"
那么cadena就是:
marca='samsung',modelo='s3'
我想像这样使用这个变量作为过滤器:
productos = Producto.objects.filter(cadena)
但我收到错误“解包的值太多”。
如果我写在我的代码中:
productos = Producto.objects.filter(marca='samsung',modelo='s3')
它工作正常。我可以使用字符串来过滤对象吗?
【问题讨论】:
-
我找到的更好的方法是在这里stackoverflow.com/questions/852414/…