CakePHP:在AppController中调用函数

发布于 2024-10-20 02:28:58 字数 146 浏览 2 评论 0原文

如何在 app/app_controller.php 中调用 app_controller.php 内的函数 在插件的行为中,该插件位于 app/plugins/media/models/behaviors/transfer.php 中一个名为transferTo 的方法内。

How to call a function inside the app_controller.php in app/app_controller.php
in the behavior of a plugin which is at app/plugins/media/models/behaviors/transfer.php inside a method called transferTo.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

似狗非友 2024-10-27 02:28:58

你不知道。模型和/或行为不应该与控制器进行对话。如果该方法如此普遍可用,请将其作为 bootstrap.php 中的函数,如果适用的话将其放入 AppModel 中,或者在 / 中创建您自己的实用程序类app/libs 您可以从任何地方静态调用它。

(您可以在任何地方调用AppController::myMethod(),前提是您处于正常的请求周期,其中AppController已经加载,或者使用 ClassRegistry::init 来获取任何控制器的实例(它将具有该方法),但这可能会产生比它解决的问题更多的问题。强>不要这样做。)

You don't. Models and/or behaviors should not talk back to the controller. If the method is so universally usable, make it a function in bootstrap.php, put it in AppModel if it's applicable there or create your own utility class in /app/libs that you can call statically from anywhere.

(You can call AppController::myMethod() anywhere, provided you're in a normal request cycle where the AppController is already loaded, or use ClassRegistry::init to get an instance of any controller (which will have the method), but this'll probably create more problems than it solves. Don't do this.)

等待我真够勒 2024-10-27 02:28:58

您可以使用 requestAction() 来实现此目的。 requestAction 是一种从任何不同控制器调用任何控制器函数的方法。

语法是

$response = $this->requestAction('name of controller/action_name/'.$parameter);

您将在 $response 变量中获得结果。

You can use the requestAction() for this. The requestAction is a way to call any controller function from any different controller.

The syntax is

$response = $this->requestAction('name of controller/action_name/'.$parameter);

you will get the result in $response variable.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文