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创建与设置默认控制器并载入模板的更多相关文章

  1. CI如何在子目录下可以设置默认控制器

    CI建立大型大型的应用程序,需要创建子文件夹在application/controllers下建立文件夹app1app1目录下有多个控制器,ca.php,cb.php我希望定义app1下的默认控制器, ...

  2. CodeIgniter(3.1.4)框架中设置默认控制器

    创建的目录结构: 如果是以上这种目录分布结构,则在controller文件夹下没有相应的控制器文件.如果在浏览器中直接使用 [http://localhost]则找不到相应的控制器. 必须进行以下设置 ...

  3. yii2设置默认控制器

    以Yii2高级模板配置为例

  4. CodeIgniter 2.x和3.x修改默认控制器问题解答

    首先明确一点,CodeIgniter框架的2.x和3.x版本中修改默认控制器是有一点区别的 但相同的操作都是修改application/config/routes.php $route['defaul ...

  5. Yii2.0修改默认控制器

    设置默认控制器有两种方法 1.在/vendor/yiisoft/yii2/web/Application.PHP的第28行左右 public $defaultRoute = 'site';      ...

  6. 2. oracle创建表空间、用户并设置默认表空间、授权

    1.创建用户并设置默认表空间 create tablespace tablespacename datafile 'tablespacename.dbf' size 200m autoextend o ...

  7. yii 关于如何改变默认访问的控制器(site)

    以前Yii1学了个皮毛就没去管了,现在想重新捡起来Yii2.0.2却出来了,于是搭建好环境来学习. 安装好Yii2后第一个想到的问题就是修改默认的控制器了. 按照网上所说,终于在/vendor/yii ...

  8. YII2如何修改默认控制器/方法

    在网上找了非常多的方法,但是都不好使最后自己综合网上所有自己琢磨出来的,见笑了 首先Yii2中在/vendor/yiisoft/yii2/web/Application.php的第28行 public ...

  9. 【ASP.NET Web API教程】2.3.6 创建产品和订单控制器

    原文:[ASP.NET Web API教程]2.3.6 创建产品和订单控制器 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本博客文章,请先看前面的内容. Part 6 ...

随机推荐

  1. C++中关于class B:A与Class B::A问题

    一,class B:A为类的继承关系,即A类是B类的基类class <派生类名>:<继承方式><基类名>{<派生类新定义成员>}; 例如: #inclu ...

  2. 第3章 文件I/O(2)_文件I/O系统调用及文件描述符

    2. 文件I/O系统调用及文件描述符 2.1 文件I/O系统调用 (1)主要函数 函数 功能 函数 功能 open() 打开文件 read() 读取文件 creat() 创建文件 write() 写入 ...

  3. Spark JDBC入门测试

    spark jdbc分支源码下载地址 https://github.com/apache/spark/tree/branch-1.0-jdbc 编译spark jdbc  ./make-distrib ...

  4. Solr --- Group查询与Facet区别

    简介 facet的查询结果主要是分组信息:有什么分组,每个分组包括多少记录:但是分组中有哪些数据是不可知道的,只有进一步搜索. group则类似于关系数据库的group by,可以用于一个或者几个字段 ...

  5. Python3 引入sqlite3时出现错误:ModuleNotFoundError: No module named '_sqlite3'

    在Python3 中内置了SQLite3,但是在编译安装完之后执行: import sqlite3 出现错误: ModuleNotFoundError: No module named '_sqlit ...

  6. pycharm连接虚拟机

    Pycharm需要在版本2017.3.3之后才能连接    通过本地的python解释器运行虚拟机的py文件 需要先配置虚拟环境 配置Ubuntu虚拟环境 # 在VitualBox创建Ubuntu虚拟 ...

  7. ldap复制

    1.使用yum命令安装openldap,openldap-servers,openldap-clients $ yum install openldap $ yum install openldap- ...

  8. 2.纯 CSS 创作一个矩形旋转 loader 特效

    原文地址:2.纯 CSS 创作一个矩形旋转 loader 特效 扩展后地址:https://scrimba.com/c/cNJVWUR  扩展地址:https://codepen.io/pen/ HT ...

  9. zabbix监控系统日志

    监控日志必须让agent运行在主动模式 参考网站:https://www.cnblogs.com/dadonggg/p/8611054.html?from=singlemessage

  10. HTML网页Table解析

    procedure TForm27.Button1Click(Sender: TObject); var doc2: IHTMLDocument2; doc3: IHTMLDocument3; ita ...