2017-01-30 4 views
0

私のDjangoアプリはAPIとやり取りし、結果をテンプレートに表示しています。DjangoテンプレートはJSONキーに二重引用符でアクセスできません:{"'Key'": "Value"}

APIの結果には、いくつかの通常のキー値のペアと、キーを二重引用符で囲んだカスタムフィールドがあります。

キーは、結果のJSONで「『custom_field_123』」としてフォーマットされています

{'cost_price': '0.00', "'asset_field_1234'": None, "'asset_field_5768'": None} 

私はこれが正しいJSON形式ではありません知っているが、それは私が対処しなければならないものです。通常のフォーマットキーの

<p>{{tower.name}}</p> 

:私は使用することができますDjangoのテンプレートで

。 しかし、テンプレート言語は認識しません。

<p>{{tower.'custom_field_123'}}</p> 

それとも

<p>{{tower.('custom_field_123')}}</p> 

があり、これらの値にアクセスする方法をか私はテンプレートでそれらにアクセスするために引用内のキーの名前を変更する必要があります。 the template reference docsから

+0

JSONを生成しているものはすべて修正する必要があります。 –

答えて

1

変数名は任意の文字(A-Z)で構成する必要があり、任意の数字(0-9)、アンダースコアは、ドット(しかし、彼らはアンダースコアで始めることはできません)。

引用符は使用できません。テンプレート言語には、これらのプロパティに直接アクセスする手段がありません。

変数キー(this questionなど)で辞書項目を検索する独自のテンプレートタグを作成できますが、データを修正することをおすすめします。

+0

これは答えと思われます。残念ながら、データは別のサービスから来ています、ありがとう。 – Bchadwick

関連する問題