ho utilizzato il decoratore @validates in sqlalchemy.orm dalla boccetta per convalidare campi, e tutto è andato bene finché tutti i campi sono indipendenti l'uno dall'altro come:Flask convalida decoratore più campi contemporaneamente
@validates('field_one')
def validates_field_one(self, key, value):
#field one validation
@validates('field_two')
def validates_field_two(self, key, value):
#field two validation
Tuttavia, ora ho bisogno di fare qualche convalida che richiederà l'accesso a field_one e field_two simultaneamente. Sembra Convalida accetta più argomenti al Convalida decoratore, tuttavia, sarà sufficiente eseguire la funzione di convalida una volta per ogni argomento, come ad esempio:
@validates('field_one', 'field_two')
def validates_fields(self, keys, values):
#field validation
risultati in un flusso di lavoro di convalidare field_one e quindi convalidare field_two. Tuttavia, mi piacerebbe convalidare entrambi allo stesso tempo (un esempio banale del quale sarebbe asserire che il valore di field_one non è il valore di field_two, un esempio del quale non autorizza il self-loops in un grafico dove field_one e field_two fare riferimento ai nodi e sta eseguendo la validazione su un bordo). Come sarebbe il modo migliore per farlo?