我刚开始使用 python 和 django 并寻找一种可能性来遍历对象属性,以实现对所有字段的搜索功能。
diff 对象类继承自抽象基类,我创建了一个可搜索的静态函数,它应该返回可以搜索的属性。
class Item(BaseItem):
internal_ean = models.CharField(unique=True, max_length=20)
quantity = models.IntegerField(default=1)
@staticmethod
def searchable():
return ['ean', 'internal_ean', 'brand', 'model']
不,我想做这样的事情:
for key in Item.searchable():
try:
string='{}={}'.format(key,term)
my_list.extend(getattr(Item.objects, "filter")(string))
except (Item.DoesNotExist):
pass
我能做些什么来避免 eval 和类似的东西?有没有办法返回我可以直接使用的指针或属性列表?
从 django 我回来了:
ValueError: too many values to unpack