return 上的空列表

Empy list on return

我的 qweb 报告中有这个

 <span t-esc="formatLang(get_routing_data(o)[-1]['total'] , digits=3)"/>

它工作正常,但有时它 returns 一个空列表,然后我得到错误索引元组超出范围。我怎样才能避免它?

您可以将调用 get_routing_data 的 return 值设置到一个变量中,并在使用前使用 t-if 条件检查该值,例如:

<t t-set="routing_data" t-value="get_routing_data(o)"/>
<span t-if="routing_data and len(routing_data) > 0 and routing_data[-1].get('total', False)" t-esc="formatLang(routing_data[-1]['total'], digits=3)"/>