我们有一个功能来提取RSS提要并使用以下代码在ColdFusion页面上显示帖子:
<cfset rssUrl = "rss1">
<cffeed action="read" source="#rssUrl#" query="fitness" properties="info">
<cfset rssUrl2 = "rss2">
<cffeed action="read" source="#rssUrl2#" query="nutrition" properties="info">
<cfif #fitness.PUBLISHEDDATE# gt #nutrition.PUBLISHEDDATE#>
<cfset entries="fitness">
<cfelse>
<cfset entries="nutrition">
</cfif>
通过以下方式完成输出:
<cfoutput query="#entries#">
问题是,RSS提要有几个帖子,我们只想显示一个。有关如何获取它并仅显示最新帖子的任何想法? (我们希望Feed有多个帖子,所以现在我们的非理想解决方案是将每个Feed的最大帖子设置为1)
答案 0 :(得分:2)
cfoutput/query=".."
将覆盖整个查询。如果您只想进行第一行,请使用:
<cfoutput>
Title from row 1: #somequery.title[1]#
</cfoutput>
基本上 - 列上的数组表示法。有意义吗?
答案 1 :(得分:2)
Ray's answer没有任何问题,但这里还有其他选择。
<cfoutput query="#entries#" maxrows="1">
对现有代码的干扰最小,如果您决定更改显示的行数(例如,通过用户设置),则可以轻松更改。
OR
如果您复制查询对象而不是查询名称(实际上不是副本,而是通过引用复制)
<cfset entries = fitness>
而不是
<cfset entries = "fitness">
你可以这样做
<cfoutput>
#entries.columnName1#
#entries.columnName2#
<!--- etc. --->
</cfoutput>
默认情况下,它只显示查询的第一行。