我在Yii中使用自定义布局。应用程序的Web部分中的一切都很好用。然后我尝试运行应用程序的控制台部分来运行一个工作,它说:
异常'CException',消息'Property“CConsoleApplication.layout”未定义。“在/pathToFramework/base/CComponent.php:173
如果我恢复到config / main.php中的默认布局,它会再次运行。我找不到任何有关如何仅为控制台应用程序指定布局的文档。我知道我可以解决它,但不想得到hacky。有没有人知道关于正确的观察到这个?感谢。
答案 0 :(得分:0)
通常,您不需要在配置中指定布局,而是在控制器中执行此操作,如果您要覆盖的话。这可能就是为什么你的CWebApplication
可以处理的事情(你在配置中给它一个layout
属性),但你的CConsoleApplication
不允许设置该属性。
似乎你的选择是:
layout
系统的配置文件中指定CWebApplication
属性,而不是CConsoleApplication
layout
CConsoleApplication
媒体资源
醇>
上述任何一项都应该有效。