Coldfusion 我能避免所有这些循环吗?

Coldfusion 我能避免所有这些循环吗?,coldfusion,lucee,Coldfusion,Lucee,我有一个长达52周的定价数据作为一个大表格的网格。所以左列是周数,第二列是成本价,第三列是销售等。我从周数的索引循环开始。此外,我还有一个查询,可以查询定价,即周、成本价、销售价等。我可以查询2、3、4、16、20周行的定价,也可以是52周 显示输入字段值的最佳选项是什么 我不能使用索引,因为如果我做一些类似于#pricingInfo.cost#price[5]#的事情,它显然会根据索引进行回退,而索引不一定与该行的周数匹配(如果我有一分钱,我希望这样的东西根据价值来工作多久?!) 现在我已经将

我有一个长达52周的定价数据作为一个大表格的网格。所以左列是周数,第二列是成本价,第三列是销售等。我从周数的索引循环开始。此外,我还有一个查询,可以查询定价,即周、成本价、销售价等。我可以查询2、3、4、16、20周行的定价,也可以是52周

显示输入字段值的最佳选项是什么

我不能使用索引,因为如果我做一些类似于#pricingInfo.cost#price[5]#的事情,它显然会根据索引进行回退,而索引不一定与该行的周数匹配(如果我有一分钱,我希望这样的东西根据价值来工作多久?!)

现在我已经将其编码为循环查询每个值,如果周数与索引循环周数匹配,则执行输出。请参见下面的示例代码。比这里的节目多了几个栏目——我想我们总共会有5个栏目

我能想到的另一个选择是扩展查询,使其始终为52行,与索引循环匹配,然后使用索引输出。这样可能更好?毕竟我在这里做的是column count*52 cfloops,如果我构建了查询,我会在这样做的同时做一两个循环,但在那之后还要做吗

<form>
<cfloop from="1" to="52" index="i">
    <input name="weeks_#i#" value="#i#" />
    <input name="net_local_#i#" value="<cfloop query='selectPrices'><cfif selectPrices.weeks eq i>#selectPrices.net_local#</cfif></cfloop>" />
    <input name="booking_fee_#i#" value="<cfloop query='selectPrices'><cfif selectPrices.weeks eq i>#selectPrices.booking_fee#</cfif></cfloop>" />
</cfloop>
</form>


我是否完全忽略了更好的方法?!在Lucee上上线时,开发人员的设置是CF.

以与表相同的方式构建查询
selectPrices
。有52行,每行有5列价格。然后在
上执行单个循环。我不清楚,你是想显示所有的周,而不考虑数据,还是只显示已经有数据的周。嗨,Alex,这正是我在这里发布后玩了一点之后现在要做的。我现在确实显示了其他值为0的行,但可能只是将它们留空。在构建查询时,我使用selectPrices和listFind中的week列的valuelist,仅在需要时循环selectPrices。这最终让人感觉效率最高。如果这不是一个评论,我会给你分数,再次感谢你确认这是一个好方法。知道第一次安装并不理想!使用数据库获取连续日期表。如果您还没有日历表,那么您的google搜索字符串就是创建连续日期的sql子查询。一旦您弄明白了这一点,您就可以离开join到另一个表,以获得具有0值的行。