2017-09-23 9 views
-1

私はDjangoのデータベースで作業しています。私はDjangoデータベースAPIに精通していますが、views.pyの中のデータベースとやりとりする方法は不思議です。ここでは、関連するモデルです:ビューでどのようにフィルタリングされたデータベースルックアップを実行しますか?

class SlotFilling(models.Model): 
    originator = models.CharField(max_length=20) 
    empty_slot = models.BooleanField(default=False) 

私はempty_slotが与えられたoriginatorためTrueあるかどうかを確認するために私のプログラムでIfなステートメントを記述しようとしています。私はこれを達成するためにfilter()を使用できるかもしれないと思っています。これを実装する最も効率的な方法の経験

答えて

2

あなたは、発信のために、すべての空のスロットを照会するために探している場合は、発信者はあなたがフィルタを使用することができますユニークな

originator_slot = SlotFlling.objects.get(originator='originator') 
slot_value = originator_slot.empty_slot 

であると仮定すると、以下の

SlotFilling.objects.filter(empty_slot=True, originator='someoriginator') 

@commentコードとして

を何かを行うことができます代わりに、オリジネーターが一意でない場合は、特定の発信元のすべての行をリストに戻します。

originator_slots = SlotFlling.objects.filter(originator='originator') 

for originator_slot in originator_slots: 
    print originator_slot.empty_slot 

はまた、それは大きな過言:)

だろうとあなたが精通していることを言うように retrieving objects in DB API documentationをご覧ください
関連する問題