如何在组件cakephp 1.3中使用app_controller函数

时间:2013-09-23 18:45:24

标签: cakephp-1.3

我有一个组件类

class ChimagesUploadComponent extends Object{

/ * ** * ** * ** * ** * ** * ** * ** * ** * **** < /强>     * fileModel是我们想要的模型的名称     *保存数据库中的上传记录。     *     *如果您不想使用数据库,只需将其设置为null     * $ this-&gt; FileUpload-&gt; fileModel = null;     *     * @var混合     * @access public     * /

var $ fileModel ='Image';

/ * ** * ** * ** * ** * ** * ** * ** * ** * **** < /强>     * uploadDir是您想要的webroot中的目录名称     *保存的上传文件。默认:文件意味着     * webroot / files必须存在并设置为chmod 777     *     * @var字符串     * @access public     * /

var $ uploadDir ='chimages';

并运作于 app_controller

function getCurrentUser() {

应用::进口( '组件', '会话');   $ Session = new SessionComponent();

$ user = $ Session-&gt; read('Auth.User');

返回$ user; }

我想在我的类ChimagesUploadComponent中使用此函数。

原因是我想将图像保存在检索文件夹名称的不同文件夹中 功能并相应地保存它我尝试了concatinating

在ChimagesUploadComponent类中。 我做了

 $user=$this->getCurrentUser();
$logid = $user['district_id'];

然后尝试在

中连接它
var $uploadDir = 'chimages/'.$logid;

因为我在webroot / chimages / 12 webroot / chimages / 13等中有不同的文件夹,请帮忙

2 个答案:

答案 0 :(得分:1)

最好在从控制器调用组件期间传递参数中的值。

但是如果您仍想访问Application Controller方法,则只需使用

进行调用
AppController::getCurrentUser()

答案 1 :(得分:0)

以下可能是另一种方法

$Appcontroller= new AppController();
$Appcontroller->calltoanyfunction();

通过这种方式,您可以将任何控制器的功能调用到另一个控制器中。