yii创建与设置默认控制器并载入模板
yii创建与设置默认控制器并载入模板
一、创建控制器
在protected下的controllers文件夹中创建自定义的控制器文件,比如:
IndexController.php (文件名首字母大写)
IndexController.php文件中添加如下代码:
class IndexController extends Controller {
//创建方法,方法名称=action+方法名
public function actionIndex() {
}
}
二、设置默认控制器
在protected下config/main.php配置文件中,添加
'defaultController' => 'Index'
三、截入视图
//默认载入布局
1.$this->render();
//默认不载入布局
2.$this->renderPartial();
三、什么是布局
在views/layouts下面的文件是布局文件。
公共区域,用render自动加载文件。
修改步骤:
1.views/layouts下面的,新建好布局文件。
2.修改默认布局文件。
位置:components/Controller.php
public $layout = '//layouts/column1';
四、载入外部文件
css与js等一些文件放入assets里面,按照前后台分开。
Yii::app()->request->baseUrl;
例如: <?php echo Yii::app()->request->baseUrl; ?>/assets/index/css/index.css
Yii::app()返回的是index.php里创建的CWebApplication实例。
在一次请求处理过程中,这是个唯一的实例。Yii::app()负责一些全局性的功能模块。
五、给视图分配数据
$data = array(
'title' => '标题';
);
$this->render('index', $data);
六、视图中处理分配的数据
在yii中,数据以对象的形式存在。
<?php foreach($data as $v): ?>
<li><?php echo $v->title; ?></li>
<?php endforeach; ?>
七、扩展自定义函数
方法一:
在protected目录下创建一个functions.php文件,在index.php加载app前引入代码。
require_once './protected/functions.php';
方法二:
在protected/components下建立一个工具静态类,如Tools
class Tools {
public static function dump($arr) {
echo '<pre>';
print_r($arr);
echo '</pre>';
}
}
在控制器里面直接用Tools::dump()来使用。
yii创建与设置默认控制器并载入模板的更多相关文章
- CI如何在子目录下可以设置默认控制器
CI建立大型大型的应用程序,需要创建子文件夹在application/controllers下建立文件夹app1app1目录下有多个控制器,ca.php,cb.php我希望定义app1下的默认控制器, ...
- CodeIgniter(3.1.4)框架中设置默认控制器
创建的目录结构: 如果是以上这种目录分布结构,则在controller文件夹下没有相应的控制器文件.如果在浏览器中直接使用 [http://localhost]则找不到相应的控制器. 必须进行以下设置 ...
- yii2设置默认控制器
以Yii2高级模板配置为例
- CodeIgniter 2.x和3.x修改默认控制器问题解答
首先明确一点,CodeIgniter框架的2.x和3.x版本中修改默认控制器是有一点区别的 但相同的操作都是修改application/config/routes.php $route['defaul ...
- Yii2.0修改默认控制器
设置默认控制器有两种方法 1.在/vendor/yiisoft/yii2/web/Application.PHP的第28行左右 public $defaultRoute = 'site'; ...
- 2. oracle创建表空间、用户并设置默认表空间、授权
1.创建用户并设置默认表空间 create tablespace tablespacename datafile 'tablespacename.dbf' size 200m autoextend o ...
- yii 关于如何改变默认访问的控制器(site)
以前Yii1学了个皮毛就没去管了,现在想重新捡起来Yii2.0.2却出来了,于是搭建好环境来学习. 安装好Yii2后第一个想到的问题就是修改默认的控制器了. 按照网上所说,终于在/vendor/yii ...
- YII2如何修改默认控制器/方法
在网上找了非常多的方法,但是都不好使最后自己综合网上所有自己琢磨出来的,见笑了 首先Yii2中在/vendor/yiisoft/yii2/web/Application.php的第28行 public ...
- 【ASP.NET Web API教程】2.3.6 创建产品和订单控制器
原文:[ASP.NET Web API教程]2.3.6 创建产品和订单控制器 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本博客文章,请先看前面的内容. Part 6 ...
随机推荐
- tornado.gen 模块解析
转自:http://strawhatfy.github.io/2015/07/22/Tornado.gen/ 引言 注:正文中引用的 Tornado 代码除特别说明外,都默认引用自 Tornado 4 ...
- css图片变色变暗变亮
本文章向码农介绍css 图片变色变暗变亮 实例代码如下: <style> *{margin:0;padding:0;list-style:none;} img{border:1px sol ...
- while_else
使用while循环输出100-50,从大到小,到50的时候,再从0到50输出,然后结束count =
- Spark SQL 基本原理
Spark SQL 模块划分 Spark SQL架构--catalyst设计图 Spark SQL 运行架构 Hive的兼容性
- DRL 教程 | 如何保持运动小车上的旗杆屹立不倒?TensorFlow利用A3C算法训练智能体玩CartPole游戏
本教程讲解如何使用深度强化学习训练一个可以在 CartPole 游戏中获胜的模型.研究人员使用 tf.keras.OpenAI 训练了一个使用「异步优势动作评价」(Asynchronous Advan ...
- 分割List为指定size
背景 老项目,用的原生的JDBC,获取连接,预编译...然后业务需要要更新很多条数据,我就写了条件为 ——IN()... 根据传入的 list 的 size 循环的给sql语句拼接上“ ? ”为了之后 ...
- mysql5.6修改字符编码,ERR:Illegal mix of collations for operation 'concat'
mysql5.6修改字符编码,ERR:Illegal mix of collations for operation 'concat' 1.问题起因:搭建环境初始化mysql的时候看到mysql配置文 ...
- 内置锁(一)synchronized 介绍与用法
一.synchronized 的介绍 synchronized 是 Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码,而这段代码也被称 ...
- phpmyadmin快速安装
phpMyAdmin 就是一种 MySQL 数据库的管理工具,安装该工具后,即可以通过 web 形式直接管理 MySQL 数据,而不需要通过执行系统命令来管理,非常适合对数据库操作命令不熟悉的数据库管 ...
- 12.mysql高级查询
1. mysql 支持三种类型的连接查询: on 后面跟的是关联条件 内连接查询 select s.name,c.name from students as s inner join classes ...