Legal Leandro! :-)
Só uma questão: atrelando o validador apenas ao form em específico não poderia ser problemático você tentar adicionar um registro nesta tabela em outro lugar do sistema e esquecer de usar o validador?
Como complemento: navegando no grupo internacional achei um jeito que o próprio Massimo havia sugerido em outro tópico.
O usuário tknack estava
na mesma situação que a sua quanto a não aparece a lista de seleção
(combos) quando utilizados os dois validadores no requires:
..."when I try to use IS_NOT_IN_DB with IS_IN_DB, I
can't obtain a drop down list, even if I change the order of the
lines."
Sugestão dada pelo Massimo:
class MY_ODD_VALIDATOR(IS_IN_DB):
def __init__(self,*a,**b): IS_IN_DB.__init__(self,*a,**b)
def __call__(self,value):
e=IS_IN_DB.__call__(self,value)
if e[1]: return e
e=IS_NOT_IN_DB(db
(db.u.unit_id==request.vars.unit_id),'u.zd_id')(value)
return e