我试图获取字典中的特定列表,但首先我收到错误:“无法查找 key ”,在互联网上搜索我发现了此解决方案的一个步骤:
{% with obj1.page.val2 as val2 %}
{{ obj1.val1|default:val2 }}
{% endwith %}
但它不起作用,这里是我的代码:
keyData = '\'' + id + '|' + id2 + '|' + id3 + '\'';
console.log(keyData);
var val2;
try
{
{% with keyData as val2 %}
console.log(val2);
datas = {{product_prices_complex_key|get_item:val2|safe}};
{% endwith %}
console.log(datas);
}catch(err){console.log(err);}
关键数据:WA5-8|2|5
并且在字典中。
最佳答案
您需要将product_prices_complex_key转换为JS对象,以便您可以使用它来执行动态查找。 json_script
标签提供了一种方法来做到这一点。
这会出现在页面上脚本之前的某个位置,但不会出现在脚本标记内
{{ product_prices_complex_key|json_script:"data" }}
然后可以像这样访问这些数据
var product_prices_complex_key = JSON.parse(document.getElementById('data').textContent);
keyData = '\'' + id + '|' + id2 + '|' + id3 + '\'';
console.log(keyData);
try
{
datas = product_prices_complex_key[keyData];
console.log(datas);
}catch(err){console.log(err);}
关于javascript - 在模板中查找 key 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59258654/