Fusebox调用代码中的保险丝

时间:2012-12-22 15:27:25

标签: coldfusion fusebox

是否有人知道是否可以在coldfusion模板中调用fuseaction?

2 个答案:

答案 0 :(得分:3)

(您尚未指定哪个Fusebox版本;此答案适用于Fusebox 5.x)

你的标题和问题是两个不同的东西 - 保险丝和融合是两个截然不同的事情。保险丝只是一个CFML模板,而保险代表一组执行特定动作的逻辑(类似于一个功能)。

保险丝:

要调用保险丝,只需包含文件,就像通常一样 - 不需要特殊的FB功能。

Fuseactions:

要调用多维数据集,请使用执行动词,如下所示:

<cfset myFusebox.do('circuit.fuseaction') />


要存储结果,请使用内容变量的第二个参数:

<cfset myFusebox.do('circuit.fuseaction',varname) />

这相当于这个XML:

<do action="circuit.fuseaction" contentvariable="varname" />


还有其他可用的参数,请参阅this Fusebox cheat sheet,其中包含大量其他有用的信息。

答案 1 :(得分:0)

使用MVC,您应该通过一个入口点。因此,在您的请求中,只应调用一个融合。

但是,fuseaction可以根据需要调用其他一些模型和视图模板。我相信Fusebox允许您将该逻辑重构为可由多个操作使用的内容。 (虽然我的Fusebox功能有点生疏,但我敢打赌一些谷歌搜索引导你的方式。)

作为最后的手段,您可以使用<cfhttp>来调用应用中调用该操作的URL。但是为什么不直接运行一些代码而不需要用另一个HTTP调用来增加服务器的负担呢?