2011-10-27 91 views
1

这是一个多部分问题。加载CakePHP Helpers

背景:

我建设使用CakePHP我的第一个网站,我喜欢它至今。我有一个数据库设置,加载的初始数据,以及一些模型,视图和控制器来与数据接口。

我创建了一个全局可访问的函数来创建添加/编辑/删除类型的图像链接在各个领域。它将用于多个视图,所以我需要它可访问,基本上,无处不在。该功能在/app/config/bootstrap.php中定义。我希望能使用HTML辅助的$html->image()$html->link()方法来推动这项工作,但他们没有提供bootstrap.php和我不知道如何加载/访问这里我定义我的功能HTML辅助。

问题:

1)这是一个合理的/惯用的地方来定义这种功能?

2)如果这不是定义函数的正确位置,我应该在哪里定义它?

3)如果是这样定义函数的正确的地方,我怎么能去装载各种CakePHP的佣工?

同样,我是新来CakePHP的,所以请让我知道,如果我的问题是不清楚,原谅我的无知。我读过/通过公平量的CakePHP文档的搜索,虽然我可以通过App::import(...);$helpers = array(...);发现很多控制器内装载佣工引用,我似乎不能够访问应用程序对象和$helpers成员是特定的我假设这个类是AppController。我假设我错误地解决了这个问题,所以请帮助我理解Cake完成此任务的方式。

回答

2

不,不是这样的功能,正确的地点(或者更准确地说,它违背了MVC模式)。对于函数,更好的方法是create your own helper。根据链接的复杂程度,您也可以使用elements

由于拇指只有那些完全独立的东西在其他应用程序应该在bootstrap.php中,甚至那些最经常会更好别处功能的规则。

+0

太好了,非常感谢您的帮助,我现在已经开始工作了! – theraccoonbear