2011-01-18 3 views
9
employees = Employee.objects.filter(age=23, sex='female') 

Ciò restituirebbe un set di query.Come ottenere un singolo oggetto modello utilizzando più parametri di ricerca ORM

Se presumo che questo set di query contenga solo un risultato, come restituire quell'oggetto direttamente?

C'è un modo come utilizzare 'get'?

+0

potresti spiegare il titolo un po 'di più? – crodjer

+0

Hai provato semplicemente ad usare 'get' invece di' filter' sopra? –

+0

Aggiungerò un if per controllare esiste(), comunque. Grazie per l'aiuto. – user469652

risposta

28

In realtà, è possibile passare più parametri di ricerca in get() method di QuerySet. Che ne dici?

try: 
    employee = Employee.objects.get(age=23, sex='female') 
except Employee.DoesNotExist: 
    # no employee found 
except Employee.MultipleObjectsReturned: 
    # what to do if multiple employees have been returned? 
Problemi correlati