【问题标题】:I want to ask about custom widget in Yii2 advanced template我想问一下 Yii2 高级模板中的自定义小部件
【发布时间】:2017-11-08 13:39:45
【问题描述】:

我在我的 yii2 高级项目中创建了一个自定义小部件

我在后端目录中创建新的目录名称组件 之后,我在组件目录名称视图中再次创建新目录

在后端/组件中,我创建了新的 PHP 文件名 SideBWidget.php

<?php
namespace backend\components;

use yii\base\Widget;
use yii\helpers\Html;
use common\models\Content;

class SideBWidget extends Widget{

    public function run(){

        $models = Content::findAll([
            'c_pkey'=>0,
        ]);

        $this->render('sideb',[
            'model' => $models
        ]);
    }
}
?>

在后端/组件/视图中我创建了 sideb.php

<div id="sidebar-nav" class="sidebar">
        <div class="sidebar-scroll">
            <nav>
                <ul class="nav">
                    <?php foreach($model as $row): ?>
                      <li><a href="#" class=""><i class="lnr lnr-alarm"></i> <span><?php echo $row->c_name; ?></span></a></li>
                    <?php endforeach; ?>
                </ul>
            </nav>
        </div>
    </div>

我像这样在views/layout/main.php中调用小部件,我也使用小部件路径 使用后端\组件\SideBWidget;

<?= SideBWidget::widget() ?>

但是当我运行时,什么都没有,也没有错误消息。问题出在哪里?

【问题讨论】:

    标签: php yii2


    【解决方案1】:

    必须在widget的run()函数中添加return语句:

    return $this->render('sideb',[
        'model' => $models
    ]);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-05
      • 2017-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多