YII2笔记之三
activeform布局
findAll等不能满足where, order by, limit,底层调用了findByCondition
col-md col-lg的使用
view的方法,前三个常用
render 把变量传递给页面,页面结果作为content变量传递给布局文件
renderPartial 只生成view文件,不使用布局文件
renderAjax
renderContent 将变量传递到布局文件
renderFile 编译php或其他文件
renderPartial和renderContent相结合等于render
文件路径指定方式:别名@app完整路径,//当前app起路径,/当前module的views起路径,viewcontextinterface返回的view(只有view名字如about,此种居多),getViewFile上次render使用的view文件目录(两次连续使用render,render的页面中再使用render)
controller的render实际调用了view的render函数,view的render不用调用布局文件
view中注册css等:css等在文件开头,js有POS_HEAD(head结束标签前),POS_BEGIN(body开始标签后),POS_END(body结束标签前),POS_LOAD(JQuery标签中),
POS_READY几种;文件先后顺序
$this->registerMetaTag()
$this->registerLinkTag($options)
$this->registerCss($css)代码
$this->registerCssFile($url)文件
$this->registerJs($js)
$this->registerJsFile($url)
asset bundle
生成顺序:meta link css js
css、js文件 的depends
controller定义了布局变量$layout
module里面定义了布局变量$layout
先查看当前controller里面有没有定义布局变量,没有则查找所在module里面定义的布局变量,还没有则查找父级module定义的布局变量
指定布局文件:false(不使用),null(用module中的),字符串(指定文件,别名方式、/开头、当前module中定义的)
布局文件的结果可以继续传递给另一个布局文件(beginContent)
向布局文件传递多个变量(yii本身只能传递一个)
view中,lulucms/widgets/InhritLayout
$this->beginBlock('content1')
....
$this->endBlock()
$this->beginBlock('content2')
....
$this->endBlock()
布局文件就可以使用变量$content1、$content2显示他们中间的内容
controller传递变量方式:
1 render时一并传入:render("about",['var'=>'value'])
2 赋值给view对象
$view=\Yii::$app->getView()
$view->params['var']='value'
3 view对象中
$context = $this->context;
context即为controller,布局文件中也可以
widget中context为view
YII2笔记之三的更多相关文章
- 《C#图解教程》读书笔记之三:方法
本篇已收录至<C#图解教程>读书笔记目录贴,点击访问该目录可获取更多内容. 一.方法那些事儿 (1)方法的结构:方法头—指定方法的特征,方法体—可执行代码的语句序列: (2)方法的调用:参 ...
- sc7731 Android 5.1 LCD驱动简明笔记之三
此篇笔记基于sc7731 - android 5.1,对lcd的gralloc库做一个简明笔记. 第一部分 调用gralloc.sc8830.so所谓的Gralloc模块,它就是一个模块,一个操作ke ...
- Django 学习笔记之三 数据库输入数据
假设建立了django_blog项目,建立blog的app ,在models.py里面增加了Blog类,同步数据库,并且建立了对应的表.具体的参照Django 学习笔记之二的相关命令. 那么这篇主要介 ...
- 《深入实践Spring Boot》阅读笔记之三:核心技术源代码分析
刚关注的朋友,可以回顾前两篇文章: 基础应用开发 分布式应用开发 上篇文章总结了<深入实践Spring Boot>的第二部分,本篇文章总结第三部分,也是最后一部分.这部分主要讲解核心技术的 ...
- 【Visual C++】游戏编程学习笔记之三:游戏循环的使用
本系列文章由@二货梦想家张程 所写,转载请注明出处. 本文章链接:http://blog.csdn.net/terence1212/article/details/44208419 作者:Zee ...
- 《C++标准程序库》笔记之三
本篇博客笔记顺序大体按照<C++标准程序库(第1版)>各章节顺序编排. ---------------------------------------------------------- ...
- yii2 笔记(1)
1.js文件加载顺序问题 在视图中引用js文件的时候,使用到jquery会报错,因为自定义的js文件在jquery之前被引入了. 由于jquery,bootstrap是在AppAsset中全局引入的, ...
- Kinect开发笔记之三Kinect开发环境配置具体解释
0.前言: 首先说一下我的开发环境,Visual Studio是2013的,系统是win8的64位版本号,SDK是Kinect for windows SDK 1.8版本 ...
- 学习笔记之三十年软件开发之路 - Things I Learnt The Hard Way (in 30 Years of Software Development)
三十年软件开发之路 https://mp.weixin.qq.com/s/EgN-9bIHonRid1DM0csQDw https://blog.juliobiason.net/thoughts/th ...
随机推荐
- float 的先后顺序 理解流
<!DOCTYPE html><html><head><style> p{float:right;}</style></head> ...
- 2015-02-08——js笔记
示例1: 关于事件对象 MSIE:window.event, cancelBubble, returnValue, srcElement, button(鼠标按键,1,4,2,左中右) W3C: ...
- pycharm中导入自写模块时,模块下出现红线
问题描述: 在pycharm中导入自己写的模块时,得不到智能提示,并在模块名下出现下红线,但是代码可以执行,错误提示为下图所示: 原因:出现 以上情况,是因为文件目录设置的问题,pycharm中的最上 ...
- 我的Android进阶之旅------>Android利用温度传感器实现带动画效果的电子温度计
要想实现带动画效果的电子温度计,需要以下几个知识点: 1.温度传感器相关知识. 2.ScaleAnimation动画相关知识,来进行水印刻度的缩放效果. 3.android:layout_weight ...
- scrapy+mongodb报错 TypeError: name must be an instance of str
经过各种排查,最后找到原因,在settings文件中配置文件大小写写错了,在pipelines中 mongo_db=crawler.settings.get('MONGODB_DB'),get 获取的 ...
- LDA(Latent Dirichlet allocation)主题模型
LDA是一种典型的词袋模型,即它认为一篇文档是由一组词构成的一个集合,词与词之间没有顺序以及先后的关系.一篇文档可以包含多个主题,文档中每一个词都由其中的一个主题生成. 它是一种主题模型,它可以将文档 ...
- shuit模块
shuit模块 #高级的 文件.文件夹.压缩包 处理模块 shutil.copyfileobj(fsrc, fdst[, length])将文件内容拷贝到另一个文件中,可以部分内容 def copyf ...
- ACM解题之(ZOJ 2724)Windows Message Queue
题目来源: 点击打开链接 题目翻译: 消息队列是windows系统的基本基础.对于每个进程,系统都维护一个消息队列.如果这个过程发生某些事情,例如鼠标点击,文本改变,系统会向队列添加一条消息.同时,如 ...
- php 数组 高效随机抽取指定条记录的算法
php使用数组array_rand()函数进行高效随机抽取指定条数的记录,可以随机抽取数据库中的记录,适合进行随机展示和抽奖程序. 该算法主要是利用php的array_rand()函数,下面看一下ar ...
- 标准c数学函数使用方法
cppreference.com -> 标准c数学函数 -> 详解 标准c数学函数 abs 语法: #include <stdlib.h> int abs( int ...