如何在yii2中使用布局文件main.php中的“查找所有条件”
我是yii 2.0新手,我想在布局文件中显示所有项目名称 我可以在layouts->main.php中使用以下代码如何在yii2中使用布局文件main.php中的“查找所有条件”,php,yii2,Php,Yii2,我是yii 2.0新手,我想在布局文件中显示所有项目名称 我可以在layouts->main.php中使用以下代码 <?php $model = Project_manage::find()->all(); ?> 在我的引导文件中,放置了以下代码 Yii::setAlias('common', dirname(__DIR__)); Yii::setAlias('frontend', dirname(dirname(__DIR__)) . '/f
<?php $model = Project_manage::find()->all(); ?>
在我的引导文件中,放置了以下代码
Yii::setAlias('common', dirname(__DIR__));
Yii::setAlias('frontend', dirname(dirname(__DIR__)) . '/frontend');
Yii::setAlias('backend', dirname(dirname(__DIR__)) . '/backend');
Yii::setAlias('console', dirname(dirname(__DIR__)) . '/console');
Event::on(View::className(), View::EVENT_BEFORE_RENDER, function() {
$model = Project_manage::find()->all();
Yii::$app->view->params['model'] = $model;
});
Fatal error: Class 'Event' not found in D:\wamp\www\yii2\common\config\bootstrap.php on line 7
放置上述代码时,将显示以下错误
Yii::setAlias('common', dirname(__DIR__));
Yii::setAlias('frontend', dirname(dirname(__DIR__)) . '/frontend');
Yii::setAlias('backend', dirname(dirname(__DIR__)) . '/backend');
Yii::setAlias('console', dirname(dirname(__DIR__)) . '/console');
Event::on(View::className(), View::EVENT_BEFORE_RENDER, function() {
$model = Project_manage::find()->all();
Yii::$app->view->params['model'] = $model;
});
Fatal error: Class 'Event' not found in D:\wamp\www\yii2\common\config\bootstrap.php on line 7
在yii 2.0中,如何使用“在布局文件中查找所有条件”
请帮我解决这个问题
谢谢。您可以在呈现之前使用事件:将其放入您的common\config\bootstrap.php中
use yii\base\Event;
use yii\base\View;
Event::on(View::className(), View::EVENT_BEFORE_RENDER, function() {
$model = Project_manage::find()->all();
Yii::$app->view->params['model'] = $model;
});
然后在主布局中,您可以将模型用作:
$model= $this->params['model'];
您是否在日志文件中查看了内部服务器错误的原因?这可能是1000种不同的东西。你有没有试着把这句话评论出来,看看它是否管用?请添加更多信息。您所指的
ActiveQuery
-功能应该只在布局文件中工作,就像在其他任何地方一样。在注释$model行之后,它工作正常。但是启用代码,它会再次显示错误:检查日志!我在这里看不到任何名称空间,因此要么在文件顶部有一个use
-语句,要么根本找不到Project\u manage
-类。当我使用上述代码时,我得到了以下错误解析错误:语法错误、意外的“函数”(t_函数)、预期标识符(t_字符串)在D:\wamp\www\yii2\frontend\config\bootstrap.php的第2行中,我的代码位于common\config\bootstrap.php中。请更新您的问题并显示您在引导文件中输入了什么。在我的回答中,我没有写一个我在你的评论中看到的函数。先生,现在我更新了我的代码。请再次检查我的代码。你没有包含名称空间。我已经更新了答案,查看前两行,并将其包含在引导文件的顶部,然后选中我们。