从 CodeIgniter 1.6.0 开始,脚手架功能已经废弃掉了
CodeIgniter 的脚手架功能使您可以在开发过程中方便快速的在数据库中添加、删除、修改数据。
非常重要:脚手架只可以在开发过程中使用。因为它提供了非常少的安全保护,所以可以访问到您的 CodeIgniter 站点的任何人都可以添加删除或修改您数据库中的数据。如果您使用脚手架,那么请确认您在使用完之后一定要立刻禁止它。千万不要在上线的站点中激活它,并且一定要在使用前给它设置一个密匙(secret word)。
为什么要使用脚手架?
这是一个经典场景:开发过程中,你创建了一个数据表并且希望快速地插入一些数据。没有“脚手架”时,你要么写些插入命令,要么就使用如phpMyAdmin之类的数据库管理工具。用CodeIgniter的脚手架特性,你可以快捷地通过浏览器添加数据。当你用完时,也可以轻易删除掉这些数据。
设置一个密匙(Secret Word)
激活脚手架之前,要先设置一个密匙。我们将通过这个密匙来启动脚手架,所以要用一些不常见的词防止被人猜到。
设置密匙,打开文件 application/config/routes.php 找到下面字段:
$route['scaffolding_trigger'] = '';
把值替换成你的密匙
注意: 脚手架密匙 不能 以下划线开头。
激活脚手架
注意:本页信息假设你已经知道 控制器 是怎么工作的了, 并且你已经有一个正在运行的控制器。同时,我们假设你已经设置好CodeIgniter使之能自动连上 数据库 。如果不是,此页的信息不会很有价值,所以我们建议你先阅读相关内容。最后,我们假设你已经知道什么叫类的构造函数。否则,请阅读 控制器 的最后一节。
激活脚手架,你的控制器构造函数应该有像这样的代码:
<?php
class Blog extends Controller {
function Blog()
{
parent::Controller();
$this->load->scaffolding('table_name');
}
}
?>
此处的 table_name 为你想操作的数据表名 (表名,不是数据库名)
一旦初始化脚手架,你可以以这样的URL来访问它:
example.com/index.php/class/secret_word/
比如,控制器名为 Blog ,密匙为 abracadabra , 你可以这样访问脚手架:
example.com/index.php/blog/abracadabra/
脚手架界面是简单明了的。你可以添加,修改或删除数据。
最后需要注意的地方:
脚手架特性只能操作有主键的表,因为这是各种数据库函数所必需的信息。