0

在使用 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

帮助!

4

1 回答 1

1

想到两件事:

  1. 由于过滤数据和未过滤数据之间的唯一区别是未过滤数据没有任何数据,所以您不能将“某些东西”识别为来自 None 吗?(如果“某些东西”不是一个明显的常数,或者至少可以识别为来自过滤器,我可以看到这是一个问题,但您没有详细说明“某些东西”是什么。)

  2. 如果您不希望表格始终被过滤,则不应将过滤器保留在表格上。如果您更换过滤器(设置为 None 或标识 lambda),那应该消除过滤,但是对于之后的每个选择,直到您再次更改它。

于 2012-10-29T23:38:06.547 回答