本文实例讲述了Yii 框架使用Gii生成代码操作。分享给大家供大家参考,具体如下:

开始 Gii

Gii 是 Yii 中的一个模块。 可以通过配置应用的 modules 属性开启它。通常来讲在 config/web.php 文件中会有以下配置代码:

$config = [ ... ];

if (YII_ENV_DEV) {

$config['bootstrap'][] = 'gii';

$config['modules']['gii'] = [

'class' => 'yii\gii\Module',

];

}

这段配置表明,如果当前是开发环境, 应用会包含 gii 模块,模块类是 yii\gii\Module。

如果你检查应用的入口脚本 web/index.php, 将看到这行代码将 YII_ENV_DEV 设为 true:

defined('YII_ENV') or define('YII_ENV', 'dev');

鉴于这行代码的定义,应用处于开发模式下,按照上面的配置会打开 Gii 模块。你可以直接通过 URL 访问 Gii:

http://hostname/index.php?r=gii

信息:如果你通过本机以外的机器访问 Gii,请求会被出于安全原因拒绝。 你可以配置 Gii 为其添加允许访问的 IP 地址:

'gii' => [

'class' => 'yii\gii\Module',

'allowedIPs' => ['127.0.0.1', '::1', '192.168.0.*', '192.168.178.20'] // 按需调整这里

],

生成活动记录类

选择 “Model Generator” (点击 Gii 首页的链接)去生成活动记录类。并像这样填写表单:

Table Name: country

Model Class: Country

然后点击 “Preview” 按钮。你会看到 models/Country.php 被列在将要生成的文件列表中。可以点击文件名预览内容。

如果你已经创建过同样的文件,使用 Gii 会覆写它, 点击文件名旁边的 diff 能查看现有文件与将要 生成的文件的内容区别。

想要覆写已存在文件,选中 “overwrite” 下的复选框然后点击 “Generator”。如果是新文件,只点击 “Generator” 就好。

接下来你会看到一个包含已生成文件的说明页面。如果生成过程中覆写过文件, 还会有一条信息说明代码是重新生成覆盖的。

生成 CRUD 代码

CRUD 代表增,查,改,删操作,这是绝大多数 Web 站点常用的数据处理方式。选择 Gii 中的 “CRUD Generator” (点击 Gii 首页的链接)去创建 CRUD 功能。本例 “country” 中需要这样填写表单:

Model Class: app\models\Country

Search Model Class: app\models\CountrySearch

Controller Class: app\controllers\CountryController

然后点击 “Preview” 按钮。你会看到下述将要生成的文件列表。

如果你之前创建过 controllers/CountryController.php 和 views/country/index.php 文件(在指南的使用数据库章节), 选中 “overwrite” 下的复选框覆写它们(之前的文件没能全部支持 CRUD)。

试运行 ¶

用浏览器访问下面的 URL 查看生成代码的运行:

http://hostname/index.php?r=country/index

可以看到一个栅格显示着从数据表中读取的国家数据。支持在列头对数据进行排序, 输入筛选条件进行筛选。

可以浏览详情,编辑,或删除栅格中的每个国家。 还可以点击栅格上方的 “Create Country” 按钮通过表单创建新国家。

下面列出由 Gii 生成的文件,以便你研习功能和实现, 或修改它们。

控制器:controllers/CountryController.php

模型:models/Country.php 和 models/CountrySearch.php

视图:views/country/*.php

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

yii mysql gii_Yii 框架使用Gii生成代码操作示例相关推荐

  1. yii mysql gii_yii框架之gii的使用

    Gii这个扩展无疑是yii2快速开发的一大助力,通过使用gii生成代码很大程序上节约了开发的时间成本,那么如何使用gii这个组件呢,下边简单介绍一下yii2中gii的一些常用功能 1.首先建一张表 C ...

  2. python数据库教程_Python连接mysql数据库及简单增删改查操作示例代码

    1.安装pymysql 进入cmd,输入 pip install pymysql: 2.数据库建表 在数据库中,建立一个简单的表,如图: 3.简单操作 3.1查询操作 #coding=utf-8 #连 ...

  3. python操作数据库教程_Python连接mysql数据库及简单增删改查操作示例代码

    1.安装pymysql 进入cmd,输入 pip install pymysql: 2.数据库建表 在数据库中,建立一个简单的表,如图: 3.简单操作 3.1查询操作 #coding=utf-8 #连 ...

  4. MySQL数据库C接口的数据查询操作示例

    MySQL数据库C接口的数据查询操作示例 命令行操作 (1)建库建表(已有则不用) 连接MySQL服务器,并登录之.选择某个数据库.假设用户在这个数据库下已有一个表了. (2)查询所有数据的方法 SE ...

  5. yii mysql gii_yii中gii如何使用

    yii中gii如何使用 1.配置 Gii模块只能在开发模式下使用,默认开启,但是限制访问gii模块必须是本地请求,以下配置中的allowedIPs可以自定义可以请求使用Gii模块的ip或者ip段.'g ...

  6. YII2使用Gii生成代码

    Yii2 框架 之所以称之为高效快速开发的一款框架,是因为有一个神奇的工具Gii 用过Yii1框架的Coder都知道,Gii可以为你快速生成代码,也就是说搭建一个可以增删改查的WebApp可能一行代码 ...

  7. yii mysql gii_Yii2.0开发——使用Gii生成代码的简单实践

    下面以一个简单的学生信息为例介绍Gii的简单使用方法. 首先利用数据书迁移脚本创建数据库(默认数据库连接已经配置成功). 输入命令: ./yii migrate/create create_stude ...

  8. yii mysql gii_Yii Gii使用

    准备数据库 第1步 - 创建一个新的数据库.数据库可以通过以下两种方式进行. 在终端运行 mysql -u root –p 登录数据后,通过执行 CREATE DATABASE mystudy CHA ...

  9. yii mysql gii_Yii整合mongodb和mysql 使用mongodb gii

    目前相关资料不是很完整.作此笔记. 一.上yii官网下载 YiiMongoDbSuite套件, 然后解压后改名为YiiMongoDbSuite 复制到你的webapp文件夹下面的extensions下 ...

最新文章

  1. 【Linux】tail命令
  2. 【转】Redis安装整理(window平台和Linux平台)
  3. Springboot里输出的html里包含script标签页会怎样
  4. linux下的启停脚本
  5. 【音视频安卓开发 (二)】
  6. 互联网日报 | 4月20日 星期二 | 华为正式宣布卖车;携程在港交所挂牌上市;广州期货交易所正式揭牌...
  7. 实例:从一个文件中读取销售记录,并合并生成销售报告,实现销售册数,总销售额,平均售价...
  8. hue集成mysql报错_hue集成hive访问报database is locked
  9. 将ubuntu引导项加入windowsXP启动菜单中
  10. ae制作小球轨迹运动_教你如何用AE做出动画效果
  11. android 台球开源,森林里的台球赛 Android新游《丛林撞球》
  12. 计算机和音乐的联系,音乐和数学的联系
  13. 端口扫描:zenmap工具的使用
  14. C#方法讲解——飞行棋画地图
  15. Android,上传一张本地图片到服务器,Okhttp的post请求上传图片本地服务器
  16. 使用GnuRadio + OpenLTE + SDR 搭建4G LTE 基站(上)
  17. office2016安装部分组件教程
  18. GPS 入门 8 —— GPS定位基本原理浅析
  19. 零 距 离 感 悟 金 山
  20. 数据处理-21.数据分析常用流程

热门文章

  1. win10自带的删除电脑流氓弹窗软件工具怎么用
  2. 特征频率、最y大振荡频率、截止频率有什么关系和异同
  3. css-图片闪烁效果
  4. jquery高级之妙味云课堂笔记
  5. 第十二周项目二----操作用邻接表存储的图
  6. taro开发微信小程序-播放轨迹(十一)
  7. String Shifting
  8. String Shifting(今日头条2017秋招真题)
  9. 【JAVA】xml文件的读取
  10. android属于数据库管理系统,详细谈谈Android系统中的SQLite数据库的应用