有谁知道是否可以在冷融合模板中调用融合动作?
问问题
1778 次
2 回答
3
(您尚未指定哪个 Fusebox 版本;此答案适用于 Fusebox 5.x)
您的标题和问题是在问两个不同的事情-保险丝和保险丝动作是两个不同的事情。fuse 只是一个 CFML 模板,而 fuseaction 表示执行特定操作(类似于函数)的一组逻辑。
保险丝:
要调用熔断器,只需像往常一样包含该文件 - 这不需要特殊的 FB 功能。
熔断器:
要调用 fuseaction,请使用do动词,如下所示:
<cfset myFusebox.do('circuit.fuseaction') />
要存储结果,请使用 content 变量的第二个参数:
<cfset myFusebox.do('circuit.fuseaction',varname) />
这是这个 XML 的等价物:
<do action="circuit.fuseaction" contentvariable="varname" />
还有其他可用的参数,请参阅此 Fusebox 备忘单,其中还包含许多其他有用的信息。
于 2012-12-22T15:53:45.013 回答
0
使用 MVC,您应该通过单个入口点工作。因此,在您的请求期间应该只调用一个 fuseaction。
但是 fuseaction 可以根据需要调用其他一些模型和视图模板。而且我相信 Fusebox 允许您将该逻辑重构为可以被多个操作使用的东西。(虽然我对我的 Fusebox 功能有点生疏,但我敢打赌一些谷歌搜索会引导你。)
作为一个可怕的最后手段,您可以使用<cfhttp>
在您的应用程序中调用一个 URL 来调用该 fuseaction。但是,为什么不直接运行一些代码,而不需要通过另一个 HTTP 调用给您的服务器带来负担呢?
于 2012-12-22T15:34:14.973 回答