Odoo v15 Qweb报表日期格式配置:增空格适配BDO支票
Odoo v15 QWeb报表适配BDO银行支票日期多空格格式的解决方案
方案1:直接修改strftime格式字符串
strftime支持在格式中直接写入多个空格,不需要依赖默认的分隔符空格。把你的格式字符串改成包含多个空格的版本即可:
context_timestamp(page['date']).strftime('%m - %d - %Y')
如果page['date']是字符串类型,需要先转成datetime对象:
context_timestamp(datetime.datetime.strptime(page['date'], '%Y-%m-%d')).strftime('%m - %d - %Y')
方案2:手动拼接日期组件(更可控)
如果担心strftime解析时压缩空格,可以手动拆分日期的月、日、年部分,再用指定空格数拼接:
<% date_obj = context_timestamp(page['date']) formatted_date = f"{date_obj.strftime('%m')} - {date_obj.strftime('%d')} - {date_obj.strftime('%Y')}" %> <span t-esc="formatted_date"/>
这种方式完全自定义分隔符的空格数量,不会有格式解析的意外问题。
方案3:CSS强制保留空格(应对HTML渲染合并问题)
如果报表渲染成HTML时多个空格被自动合并为一个,可以给日期元素添加white-space: pre样式来强制保留空格:
<span style="white-space: pre;"><%= context_timestamp(page['date']).strftime('%m - %d - %Y') %></span>
内容的提问来源于stack exchange,提问作者zzaren 009
相关产品推荐
相关产品推荐

