2016-05-20 20:04:08 4619次浏览 2条回答 1 悬赏 10 金钱

sky模块,controller里通过actions方法独立操作action。
然后为了业务上的更细粒度的拆分,把具体每个action类(比如TestAction)里通过命名空间的方式调用了另外一个类(比如common目录下的TestCommon.php这个类)。

namespace frontend\modules\sky\common    //TestAction里通过该命名空间调用common这个目录下的TestCommon类

现在的问题是,当加载TestCommon这个类的时候,如何进行初始化一些变量呢,比如通过__construct()或者init()方法都会提示如下报错。
即使TestCommon这个类继承了yii\web\Controller之后也还是报错。
先提前谢过了!

Unknown Property – yii\base\UnknownPropertyException

Getting unknown property: frontend\modules\venus\VenusAction::obj
  • 回答于 2016-05-20 23:41 举报

    同样的问题啊,楼主解决了吗?

    2 条回复
    回复于 2016-05-21 10:33 回复

    还没有。。。

    回复于 2016-05-23 09:40 回复

    补充一句,继承yii\base\Object也是同样的报错。。。

  • 回答于 2016-05-23 17:26 举报

    看看文档关于依赖注入容器部分

    1 条回复
    回复于 2016-05-24 08:49 回复

    好的,谢谢。
    现在解决了,犯了一个低级错误。
    在action里调用自定义命名空间的类(比如例子里的TestCommon)的时候一定要先初始化,然后再调用方法。

您需要登录后才可以回答。登录 | 立即注册
doufunao
试用期

doufunao

注册时间:2016-05-13
最后登录:2016-06-28
在线时长:0小时46分
  • 粉丝0
  • 金钱25
  • 威望0
  • 积分25

热门问题