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

これはクエリーセットを返します。複数のORMルックアップパラメータを使用して単一のモデルオブジェクトを取得する方法

このクエリーセットには1つの結果しか含まれていないと仮定すると、そのオブジェクトを直接返す方法はありますか?

「get」を使用する方法はありますか?

+0

タイトルをもう少し説明できますか? – crodjer

+0

上記の 'filter'の代わりに' get'を使ってみましたか? –

+0

とにかくexist()をチェックするifを追加します。助けてくれてありがとう。 – user469652

答えて

28

実際には、QuerySetのget() methodに複数のルックアップパラメータを渡すことができます。それではどうですか?

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? 
関連する問題