1. ホーム
  2. django

[解決済み] Django のモデルのフィールドに、ドット構文ではなく文字列でアクセスしますか?

2023-08-03 08:59:05

質問

Djangoでは、こんなことができるんですね。

test = Test.objects.get(id=1)
test.name

こんな感じで、動的に生成される文字列を使って、プロパティにアクセスできるようにしたいです。

test['name']

または、文字列を使用する他の構文。 私が試したのは

test._meta.get_field_by_name('name')

というのがありますが、これはフィールドそのものを返すのであって、値を返すわけではありません。

何かアイデアはありますか?

どのように解決するのですか?

Pythonに組み込まれている getattr() 関数を使用します。

getattr(test, 'name')