1

私はそのようなモデルを持っています

Post (models.Model):
recommended = models.BooleanField (default=False)

私が持っているモデルからすべてのオブジェクトを取得するとき

posts = Post.objects.all()
posts.count() # show equals to 18

posts[0].recommended # equals to False 

しかし、推奨タグでフィルタリングしようとすると、モデルでも合計カウントが0になり、フィルターでリクエストした値と同じ値になります

 posts = Post.objects.filter(recommended=False)
 posts.count() # show equals to 0

モデルでこのフィールドを作成する前に vas crated があったため、このフィールドには値がなかったようです

4

1 に答える 1

0

False または NULL 値を持つオブジェクトをフェッチする場合は、次のように実行できます。

Post.objects.exclude(recommended=True)

すべての値を次のUPDATEように変更するクエリを発行して、データベースを修正することをお勧めします(django シェルから実行します)。NULLFalse

Post.objects.filter(recommended__isnull=True).update(recommended=False)

テーブルを変更NOT NULLして列定義に含めることもお勧めします。

于 2013-09-24T13:56:10.877 に答える