2019年10月18日金曜日

Djangoのobjectから属性1つのみ取得したい場合は flat=True を使う


file_s = Share.objects.filter(shared_user_id=log_id)

Djangoビューのfile_sからfiles_id属性を取得したいと思います。どうすればよいですか?

ベストアンサー
values()を使用して特定の属性を取得し、以下のように辞書のリストを返します。
file_s = Share.objects.filter(shared_user_id=log_id).values('files_id')

1つの属性だけ必要な場合は、flat = True を使用して値の一覧のみを返すようにできます。ただし、リストがどのような順番になるかを確認してください。

file_s = Share.objects.filter(shared_user_id=log_id).values_list('files_id', flat=True).order_by('id')

0 件のコメント:

コメントを投稿