使用DAL将filter_out应用到db列后,我从mysql数据库中获取原始值时出现问题。
例如,我有一个带整数列的表。然后我像这样过滤掉它:
db.mytable.mycolumn.filter_out = lambda mycolumn: "some complex stuff"
if mycolumn is None else "another complex stuff"
但是如何检索原始值?
rows = db().select(db.mytable.mycolumn) // get filtered data, not the original
帮助!
答案 0 :(得分:1)
我想到了两件事:
由于过滤后的唯一区别未经过滤的数据是未经过滤的,你不能只识别“有些东西”来自无吗? (如果“某些东西”不是一个明显的常数,或者至少可以识别为来自过滤器,我可以看出这是一个问题,但你还没有详细说明“某些东西”是什么。)
< / LI>如果您不希望始终过滤表,则不应将过滤器保留在表中。如果你替换过滤器(设置为None或身份lambda),那应该消除过滤,但是对于之后的每个选择,直到你再次更改它。