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 ...
随机推荐
- decorator的class方式
class式的 Decorator decorator的class方式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 clas ...
- iOS 一些琐碎的知识点
1. Xcode左边导航栏中,类文件后面的标记"A""M""?"符号的含义 M = Locally modified 文件已被修改 U = ...
- RBF神经网络和BP神经网络的关系
作者:李瞬生链接:https://www.zhihu.com/question/44328472/answer/128973724来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...
- mono部分源码解析
一.源码结构 这里仅列举几个重要的目录:mcs: mcs: Mono实现的基于Ecma标准的C#编译器. class: CLI的C#级的实现.类似于Android中的Java层,应用程序看 ...
- react 中state与props
react 中state与props 1.state与props props是只读属性,只有在组件被实例化的时候可以赋值,之后的任何时候都无法改变该值.如果试图修改该值时,控制台会报错 only re ...
- nginx经过多层代理后获取真实来源ip
nginx取 $remote_addr 当做真实ip,而事实上,$http_X_Forwarded_For 才是用户真实ip,$remote_addr只是代理上一层的地址 解决方案: 在 http 模 ...
- django框架预备知识
内容: 1.web预备知识 2.django介绍 3.web框架的本质及分类 4.django安装与基本设置 1.web预备知识 HTTP协议:https://www.cnblogs.com/wyb6 ...
- VS2015+Opencv半永久配置
电脑W7 64位+VS2015+opencv3.0 刚开始学习opeencv很麻烦,配置的问题都弄了好久,一旦重装又出现很多问题,在网上看了一个论坛说的永久配置,特意记录一下! 第一步:下载openc ...
- LaunchFaster 启动器工具 - 类似 Rolan 和音速启动的图标式快捷启动软件
LaunchFaster 启动器是本人近期编写的一款windows平台上快速启动应用的开源工具软件. LaunchFaster 启动器是一款类似于 Rolan 和 音速启动 和 Lily 的图标形式的 ...
- controller检查header
以前都只能拿到request再检查,其实有相应的注解. public Result updateRecentScore(@RequestBody Map map, @RequestHeader(&qu ...