1. 这篇文章主要介绍了Yii 框架使用Gii生成代码操作,结合实例形式F分析了Yii 使用Gii生成代码基本操作步骤与相关注意事项,需要的朋友可以参考下
  2. 本文实例讲述了Yii 框架使用Gii生成代码操作。分享给大家供大家参考,具体如下:
  3. 开始 Gii
  4. Gii Yii 中的一个模块。 可以通过配置应用的 modules 属性开启它。通常来讲在 config/web.php 文件中会有以下配置代码:
  5. ``````php
  6. $config = [ ... ];
  7. if (YII_ENV_DEV) {
  8. $config['bootstrap'][] = 'gii';
  9. $config['modules']['gii'] = [
  10. 'class' => 'yii\gii\Module',
  11. ];
  12. }
  1. 这段配置表明,如果当前是开发环境, 应用会包含 gii 模块,模块类是 yii\gii\Module
  2. 如果你检查应用的入口脚本 web/index.php 将看到这行代码将 YII_ENV_DEV 设为 true
  1. defined('YII_ENV') or define('YII_ENV', 'dev');
  1. 鉴于这行代码的定义,应用处于开发模式下,按照上面的配置会打开 Gii 模块。你可以直接通过 URL 访问 Gii
  2. ``````php
  3. http://hostname/index.php?r=gii
  4. 信息: 如果你通过本机以外的机器访问 Gii,请求会被出于安全原因拒绝。 你可以配置 Gii 为其添加允许访问的 IP 地址:
  1. 'gii' => [
  2. 'class' => 'yii\gii\Module',
  3. 'allowedIPs' => ['127.0.0.1', '::1', '192.168.0.*', '192.168.178.20'] // 按需调整这里
  4. ],
  1. 生成活动记录类
  2. 选择 Model Generator (点击 Gii 首页的链接)去生成活动记录类。并像这样填写表单:
  3. Table Name: country
  4. Model Class: Country
  5. 然后点击 Preview 按钮。你会看到 models/Country.php 被列在将要生成的文件列表中。可以点击文件名预览内容。
  6. 如果你已经创建过同样的文件,使用 Gii 会覆写它, 点击文件名旁边的 diff 能查看现有文件与将要 生成的文件的内容区别。
  7. 想要覆写已存在文件,选中 overwrite 下的复选框然后点击 Generator”。如果是新文件,只点击 Generator 就好。
  8. 接下来你会看到一个包含已生成文件的说明页面。如果生成过程中覆写过文件, 还会有一条信息说明代码是重新生成覆盖的。
  9. 生成 CRUD 代码
  10. CRUD 代表增,查,改,删操作,这是绝大多数 Web 站点常用的数据处理方式。选择 Gii 中的 CRUD Generator (点击 Gii 首页的链接)去创建 CRUD 功能。本例 country 中需要这样填写表单:
  11. Model Class: app\models\Country
  12. Search Model Class: app\models\CountrySearch
  13. Controller Class: app\controllers\CountryController
  14. 然后点击 Preview 按钮。你会看到下述将要生成的文件列表。
  15. 如果你之前创建过 controllers/CountryController.php views/country/index.php 文件(在指南的使用数据库章节), 选中 overwrite 下的复选框覆写它们(之前的文件没能全部支持 CRUD)。
  16. 试运行
  17. 用浏览器访问下面的 URL 查看生成代码的运行:
  18. http://hostname/index.php?r=country/index
  19. 可以看到一个栅格显示着从数据表中读取的国家数据。支持在列头对数据进行排序, 输入筛选条件进行筛选。
  20. 可以浏览详情,编辑,或删除栅格中的每个国家。 还可以点击栅格上方的 Create Country 按钮通过表单创建新国家。
  21. 下面列出由 Gii 生成的文件,以便你研习功能和实现, 或修改它们
  1. 控制器:controllers/CountryController.php
  2. 模型:models/Country.php models/CountrySearch.php
  3. 视图:views/country/*.php

更多相关文章

  1. android播放rtsp文件
  2. Android命名规范(重点讲解:包名)
  3. Android(安卓)中动态提取图片中颜色作为主题色
  4. Android(安卓)Studio打包项目
  5. Android(安卓)dex分包
  6. Android:使用命令行工具adb、mksdcard等
  7. Android(安卓)Project from Existing Code 生成 R 文件错误、失
  8. Android轻便易用的文件选择器ExFilePicker
  9. Android(安卓)APK包文件解析

随机推荐

  1. 豆瓣Javascript代码风格规范
  2. 如何使用JQuery .Ajax进行Pingdom检查?
  3. javascript变量:全局?还是局部?这个得注意
  4. 拖放div而不进行克隆
  5. 如何使我的AJAX内容能够被谷歌抓取?
  6. Javascript偏函数与柯里化
  7. 使用CSS类作为JS标记是一种不好的做法吗?
  8. 在Javascript / node.js中共享模块之间的
  9. Angular使用jQuery插件与外部控制器中的
  10. 如何更改LeafletJS中的默认加载图块颜色?