如何在内部使用Search
函数调用我的doSearch()
控制器来调用getTitles()
控制器中的Titles
函数?
答案 0 :(得分:8)
简短的回答是,你不应该这样做。您应该将其移动到Title模型,或者将其放在组件或帮助器中以便重复使用。
如果您确定要直接调用控制器,那么Cake会为此提供一种方法
http://book.cakephp.org/2.0/en/controllers.html#Controller::requestAction
答案 1 :(得分:1)
没有理由去另一个控制器。
控制器应该主要从模型中调用方法。所以应该有一个包含你需要的方法的标题模型。
如果您需要更多帮助,请发布您的代码。
答案 2 :(得分:0)
所以答案,以供将来参考:
$this->requestAction('/controller/action/params');
答案 3 :(得分:0)
制作你想要重用组件的功能并不总是像Cakephp一样好用,没有引入Models和find(),以及set-> $ this等另一种方法是让你的核心功能成为核心函数然后返回$ results,调用此函数,如$ results = $ this-> function_within_controller();所以你可以用这种方式重用这些功能。我在Cakephp中尝试使用组件时会遇到各种错误,组件适合使用独立的PHP脚本和代码。