Openerp RML文档的动态样式

Openerp RML文档的动态样式,openerp,openerp-7,rml,Openerp,Openerp 7,Rml,我需要的是让每一张桌子的第二排都有不同的背景颜色。我已经成功地创建了可以从rml文档调用的方法,并返回十六进制颜色。我需要的是一种在rml端将tr标记的背景颜色属性设置为我的方法的返回值的方法。如何做到这一点?我一直在使用官方文件,并特别关注第11章的条件格式,但我没有看到任何东西。基本上,我想做的是: <tr style="background-colour: [[_get_colour(index)]];" /> <tr>[[ setTag('tr','tr',{'

我需要的是让每一张桌子的第二排都有不同的背景颜色。我已经成功地创建了可以从rml文档调用的方法,并返回十六进制颜色。我需要的是一种在rml端将
tr
标记的背景颜色属性设置为我的方法的返回值的方法。如何做到这一点?我一直在使用官方文件,并特别关注第11章的条件格式,但我没有看到任何东西。基本上,我想做的是:

<tr style="background-colour: [[_get_colour(index)]];" />
<tr>[[ setTag('tr','tr',{'style': 'Move_Line_Contect_Assign_State_background' if picking.move_lines.index(move_lines) % 2 else 'Move_Line_Contect_Assign_State'}) ]]

\u get\u color
将返回一个包含颜色十六进制值的字符串


编辑:事实证明,openerp v7中没有根据实现用于条件格式设置的docIf RML标记,因此我不得不求助于另一种解决方案。

目前无法测试这一点,但这里有一个可能可行的想法:

为每个迭代制作两个
(每个样式1个)。在其中一种情况下,检查索引是否为偶数或
removeParentNode('tr')
,在另一种情况下,检查索引是否为奇数或
removeParentNode('tr')
。这样,每次迭代只显示一个或另一个表行,但不能同时显示两个表行

示例(未测试):

[[(索引%2==0和display.content)或removeParentNode('tr')]]
[[(索引%2!=0和display.content)或removeParentNode('tr')]]

目前无法测试这一点,但以下是一个可能有效的想法:

为每个迭代制作两个
(每个样式1个)。在其中一种情况下,检查索引是否为偶数或
removeParentNode('tr')
,在另一种情况下,检查索引是否为奇数或
removeParentNode('tr')
。这样,每次迭代只显示一个或另一个表行,但不能同时显示两个表行

示例(未测试):

[[(索引%2==0和display.content)或removeParentNode('tr')]]
[[(索引%2!=0和display.content)或removeParentNode('tr')]]

我在系统的rml中找到了一个解决该问题的示例。我最终解决了以下问题:

<tr style="background-colour: [[_get_colour(index)]];" />
<tr>[[ setTag('tr','tr',{'style': 'Move_Line_Contect_Assign_State_background' if picking.move_lines.index(move_lines) % 2 else 'Move_Line_Contect_Assign_State'}) ]]
[[setTag('tr','tr',{'style':'Move\u Line\u Contect\u Assign\u State\u background'如果拾取。Move\u Line.index(Move\u Line)%2其他'Move\u Line\u Contect\u Assign\u State'])]

我在系统的rml中找到了一个解决该问题的示例。我最终解决了以下问题:

<tr style="background-colour: [[_get_colour(index)]];" />
<tr>[[ setTag('tr','tr',{'style': 'Move_Line_Contect_Assign_State_background' if picking.move_lines.index(move_lines) % 2 else 'Move_Line_Contect_Assign_State'}) ]]
[[setTag('tr','tr',{'style':'Move\u Line\u Contect\u Assign\u State\u background'如果拾取。Move\u Line.index(Move\u Line)%2其他'Move\u Line\u Contect\u Assign\u State'])]

这听起来像是一个很好的解决方案,但是
索引
变量没有定义,因此它对我不起作用,但我可能会使用您的方法,因为它更清晰地定义了索引变量对不起,我假设您已经找到了获取
索引
的方法,正如您在问题示例中使用的那样。这听起来像是一个很好的解决方案,但是
索引
变量没有定义,因此它对我不起作用,但我可能会使用您的方法,因为它更清晰地定义了索引变量对不起,我假设您已经找到了获取
索引
的方法,正如您在问题示例中使用的。