1

如何在另一个模块中调用一个模块?此代码适用于受保护/控制器中的控制器:

$image = Yii::app()->image->save($photofile, 'some_name','uploadedGal');

但是在我的另一个模块(admin)的控制器中,我收到了这个错误。

Property "CWebApplication.image" is not defined. 

image在主配置文件中定义了模块:

'modules'=>array(
           'image'=>array(
                    'createOnDemand'=>true, // requires apache mod_rewrite enabled
                    'install'=>true, // allows you to run the installer
            ),
            'admin',

),
4

2 回答 2

7

您需要在模块类中包含其他模块组件。像这样的东西:

class AdminModule extends CWebModule
{
    public function init()
    {
        $this->setImport(array(
            'admin.models.*',
            'admin.components.*',
            'image.models.*',
            'image.components.*',
        ));
}
于 2012-06-15T16:08:16.477 回答
2

您可以在 config/main.php 中导入模块组件,如下所示:

'import'=>array(
    'application.models.*',
    'application.components.*',
    'application.modules.admin.models.*',
        'application.modules.admin.components.*',
            ....
            ....
),

这样所有模型等都将为您导入。

于 2014-01-16T07:22:23.797 回答