我是Jinja2的新手,将它与家庭自动化系统Home Assistant结合使用。我无法在谷歌搜索中找到问题的答案,也无法在我签出的各种Jinja2教程中找到答案。
我想提取MQTT主题名称的一部分,例如light_status_office / tele_ls / LWT或light_status_kitchen / tele_ls / LWT。我想获取light_status_之后和/ tele_ls / LWT之前的部分,例如办公室或厨房。
到目前为止,我正在按照以下方式进行操作,其中topic3 =办公室。
Widget build(BuildContext context) {
return new Card(
//elevation: 8.0,
margin: new EdgeInsets.symmetric(horizontal: 10.0, vertical: 10.0),
child: Container(
decoration: new BoxDecoration(
color: Colors.white,
borderRadius: new BorderRadius.circular(25.0)
),
child: ListTile(
contentPadding: EdgeInsets.symmetric(horizontal: 20.0, vertical: 10.0),
leading: Container(
padding: EdgeInsets.only(right: 12.0),
decoration: new BoxDecoration(
border: new Border(
right: new BorderSide(width: 1.0, color: Colors.white54)
)
),
child: notchecked,
),
title: Text(
statusCard.timeStampString,
style: Theme.TextStyles.buttonText,
),
subtitle: Text(
statusCard.text,
style: Theme.TextStyles.contentCardText,
),
trailing: delete,
),
),
);
是否拆分了最适合此用途的过滤器?例如,可以将拆分嵌套,这样就不需要topic3了吗?
总体而言,有没有更好的方法可以实现目标?
非常感谢! 罗恩