最新消息: 关于Git&GitHub 版本控制你了解多少?
您现在的位置是:群英 > 开发技术 > PHP语言 >
yii中widget用法有哪些?你知道多少种?
PHP中文网发表于 2021-09-07 18:09 次浏览

    yii中widget用法有哪些?在yii视图中使用widget的方式有三种,下文总结了这三方式且有示例供大家参考,感兴趣的朋友就继续往下看吧,希望能够帮助到大家。

    一、显示详细信息:

    二、显示列表,可以进行条件限制和分页:    

    控制器:

    视图:

    子视图:

    getAttributeLabel('id')); ?>://$data接收来自父视图的数据,使用getAttributeLabel()获取模型中设置的标签id), array('view', 'id'=>$data->id)); ?>//使用$data->attribute获取值。

    三、显示列表,但是结果会在表格中显示

    Yii中loadModel的使用:$this->loadModel($modelId);    

    一般在R/U/D操作中,会loadModel($modelId),这是因为此时,读,更新和删除时,已经通过GET方式获取到了model的id值,只需要将对应id的model加载进来,就可以了。但是在C(建立),不需要loadModel,而是需要新建一个初始化的model。使用$_POST['Model']的值分别填充model的attribute后,就可以save()了。
    Yii中不同控制器使用同一个模板:    

    在Yii的CRUD操作中,C和U使用的是同一个子视图。区别在于:C操作中,所有的input的值都是空,新建的model也是初始化状态,并准备接收来自POST的值。在U操作中,所有input的值需要通过loadModel($id)的方式填充,然后准备接收来自POST的更新的值(有的
值并没有被用户修改);然后,根据$model->isNewRecord()来判断提交按钮显示C还是U操作。最后使用$model->save();将记录存储。
    Yii中渲染视图的方式:    

    使用$this->render()和$this->renderPartial()渲染视图;前者一般渲染一个整体视图,在整体视图中可能会用后者渲染需要重复渲染的部分。例如在indexAction中一般会显示记录列表,由于所有记录的渲染方式一致,此时会使用子视图来分别渲染相同的部分。而index视图只是渲染一个大的结果,比如导航面包碎屑,记录的条数和分页等。

    关于yii中widget的三种用法就介绍到这了,上文有较详细的介绍,希望大家阅读完这篇文章能有所收获,想要了解更多yii视图的内容,请关注群英网络其它相关文章。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
相关信息推荐