Djangoでid=1およびflag='D'のデータを取得したいと思います。SQLではANDとともにWHEREを使用します。どうすればDjangoでそれを行うことができますか?私は試した:
File.objects.filter(user_id=1 AND flag='D')
しかし、それは機能しません。
そしてもう1つ、Djangoのデータベースの1つのファイルのみを更新できます。つまりupdating flag='D' to flag='F'
、すべて同じです。
複数のレコードをフィルタリングする場合は、クエリセットを返すため、「filter」を使用します
File.objects.filter(user_id=1, flag='D')
単一の一意のレコードに関心がある場合は、単一のオブジェクトを返すため、「get」を使用してください。
File.objects.get(user_id=1, flat='D')
File.objects.filter(user_id=1, flag='D')
これにより、user_id=1およびflag='D'を持つすべてのファイルが取得されます。
列を更新するには、クエリセットで更新を使用する必要があります
File.objects.filter(user_id=5).update(flag="D")
あなたもすることができます
q = File.objects.filter(user_id=1, flag='D')
印刷q.query
して、DjangoORMによって生成されたSQLを確認します