最新のDjangoモデルオブジェクトを取得しようとしていますが、成功しないようです。
これらはどちらも機能していません。
obj = Model.objects.filter(testfield=12).latest()
obj = Model.objects.latest().filter(testfield=12)
最新のDjangoモデルオブジェクトを取得しようとしていますが、成功しないようです。
これらはどちらも機能していません。
obj = Model.objects.filter(testfield=12).latest()
obj = Model.objects.latest().filter(testfield=12)
NewsPostImage.objects.filter(newsPostTarget=img_id).first()
。それが役に立てば幸い。
回答:
obj= Model.objects.filter(testfield=12).order_by('-id')[0]
djangoのドキュメントを参照してください:https: //docs.djangoproject.com/en/dev/ref/models/querysets/#latest
latest()でフィールドを指定する必要があります。例えば。
obj= Model.objects.filter(testfield=12).latest('testfield')
または、モデルのメタでget_latest_byが指定されている場合は、へのfield_name
引数を省略できますearliest() or latest()
。Djangoはget_latest_by
デフォルトで指定されたフィールドを使用します。
obj= Model.objects.filter(testfield=12).order_by('-id')[:1]