PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Rimuovere gli oggetti dalla query se Nessuno o Null

Puoi creare un dict con i dati del filtro:

filter_data = {'horsepower': horsepower, 'voltage': voltage, 'rpm': rpm}

Quindi crea un altro dict con solo le chiavi quali valori esistono:

filter_data = {key: value for (key, value) in filter_data.items()
               if value}

E infine usa questo dict come kwargs per la tua domanda:

results = Motor.query.filter_by(**filter_data).all()