我正在尝试选择一个表格,其中某个值在参考字段中不存在。是否可以否定contains()方法?
grid = SQLFORM.smartgrid(db.redaktion.projekt.contains(projektid)
答案 0 :(得分:0)
pyDAL
次查询中的否定运算符为~
。此外,smartgrid
的第一个参数必须是Table
而不是Query
。要将查询应用于给定表,请使用constraints
参数。所以,它将是:
grid = SQLFORM.smartgrid(db.redaktion,
constraints={'redaktion': ~db.redaktion.projekt.contains(projektid)})
请参阅http://web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#Logical-operators。