没有attributeCollection支持的动态属性赋值?

时间:2014-09-21 23:40:05

标签: railo cfml

我注意到即使在Railo 4.2中,cfloop标记也不支持attributeCollection。那么实现动态属性赋值的最佳方法是什么?我想要动态的代码是:

<cfscript>
query_opts = {
    query="fw.report.data",
}
if (IsSet(fw.report,'group')) query_opts.group="#fw.report.group#";
</cfscript>

<cfloop attributeCollection="#query_opts#">

    <!--- Does not group --->

</cfloop>

<cfloop query="#query_opts.query#" group="#query_opts.group#">

    <!--- Grouping works --->

    <cfif IsSet(query_opts,'group')>
        <cfoutput><h2>#fw.report.data[query_opts.group]#</h2></cfoutput>
    </cfif>
</cfloop>

第二个版本可以工作,组可以分配空字符串,但如果需要,如何完全删除属性(例如,因为group =“”无效)?如何在上面的代码中使group可选,而不在if / else条件中重复整个循环结构?

编辑:我正在寻找一个通用的解决方案,而不是cfloop / group属性特有的解决方案。

0 个答案:

没有答案