到前台或者后台对应的conf.php文件进行配置allowedIPs,数组形式放允许gii访问 if (! modules']['debug'] = [ 'class' => 'yii\debug\Module', ]; $config['bootstrap'][] = 'gii '; $config['modules']['gii'] = [ 'class' => 'yii\gii\Module', 'allowedIPs' => ['*
复制gii默认模板将vendor\yiisoft\yii2-gii\generators\crud\default拷贝一份到backend\views下。这里我命名为_gii 2. 修改配置支持 修改environments\dev\backend\config\main-local.php $config['modules']['gii'] = [ 'class' => 'yii\gii\Module', 'generators' => [ 'crud' => [ 'class' => 'yii\gii\generators\crud\Generator', 'templates' => [ 'myCrud' => '@backend/views/_gii/generators/crud/default', ] ] ], ]; 3
'class'=>'yii\debug\Module', 'allowedIPs'=>['*',], ]; $config['bootstrap'][] = 'gii '; $config['modules']['gii'] = [ 'class' => 'yii\gii\Module', 'allowedIPs' => ['* r=gii http://yii.cw.net/? r=debug 如果启用了美化的Url, enablePrettyUrl=true http://yii.cw.net/gii http://yii.cw.net/debug 已知问题 yii2.0.46 , yii2-gii2.2.4在php8.1.9会报错,切换到php7.4才可以
准备一张表: -- phpMyAdmin SQL Dump -- version 4.5.1 -- http://www.phpmyadmin.net -- -- Host: 127.0.0.1 -- Generation Time: 2022-02-27 13:17:38 -- 服务器版本: 10.1.13-MariaDB -- PHP Version: 5.6.21 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00";
gii可谓是Yii2中一个神奇的扩展,可以快速帮你生成Model类、CRUD、Module模块、Form表单等,可以在开发上节约很大的时间。 1、在 config/web.php 中配置 if (YII_ENV_DEV) { $config['bootstrap'][] = 'gii'; $config['modules'] ['gii'] = 'yiigiiModule'; } 2、在入口文件配置,设置为开发环境 defined('YII_ENV') or define('YII_ENV', 'dev'); 3、浏览器打开 r=gii 4、点击Model Generator,填写Table Name(表名)和Model Class(类名)快速生成Model类 5、然后,点击下方的preview,会列出要生成的模型
开启gii模块 common/config/main-local.php加入下面代码 return [ 'modules' => [ 'gii' => [ 'class' => 'yii\gii\Module', 'allowedIPs' => ['::1','127.0.0.1'], //只允许本地访问gii 'generators'=> [ /*重新定义gii model & crud的生成模板*/ 'module'=> [ ' 访问gii URL:http://localhost/项目目录/backend/index.php/gii ? 3. 生成模块 ? URL访问默认控制器 用crud组件common\gii\Crud来实现基础的action Crud里的index方法已经做好了分页处理。
404报错 因为我们指定默认控制器为index,却没有创建相应的文件,接下来我们用yii的gii组件生成控制器文件。 gii生成控制器 可以看到,程序自动为我们生成了frontend/controllers/IndexController.php和frontend/views/index/index.php两个文件 此时 ,再刷新网页,就能正常访问了 查看gii更多用法可以执行:php yii help gii ? gii help gii是yii的代码自动生成工具,可以在web页面生成,也可以在命令行生成,程序员大多更偏爱于命令行。 现在不太清楚用法,也没关系,先了解有这个功能,后续会单独讲解gii 构建人物列表页面 控制器构建数据 在Index控制器中,我们要构建一个简易的人物列表,效果如下: 控制器将人物列表数据传送给视图文件
CURD-Gii.jpg 之前在介绍Yii框架的时候就说过 Yii 支持 gii 功能, gii 去自动生成 Web 站点常用功能的代码,也就是我们经常说的 CURD 操作,增删改查。 使用 gii 生成代码也是非常的简单,Gii 被设计成高度可定制和可扩展的代码生成工具, 使用它可以大幅提高应用开发速度 gii 是 Yii 中的一个模块。 可以通过配置应用的 modules 属性来开启它,但是你也别想着靠着gii就不用你写CURD操作了,该写还是写的,因为gii只能自动生成简单的增删改查,也就是单表的增删改查 先开启gii,通常来讲在 config ,看你们实际情况吧,意思就是只有开启了才能使用 这里也不多介绍gii的使用了,如果不了解的话可以去看一下Yii中文网用 Gii 生成代码的文档 本篇文章主要是说访问 gii 页面404的解决方法,为啥呢 ,所以需要配置 gii 为其添加允许访问的 IP 地址 'gii' => [ 'class' => 'yii\gii\Module', 'allowedIPs' => ['127.0.0.1
'class' => 'yii\debug\Module', 'allowedIPs' => ['*'] ]; $config['bootstrap'][] = 'gii '; $config['modules']['gii'] = [ 'class' => 'yii\gii\Module', 'allowedIPs' => ['*
使用Gii创建模块 通过配置应用的yii\base\Application::modules属性开启它。 通常来讲在config/wep.php文件中配置代码如下 if (YII_ENV_DEV) { $config['bootstrap'][] = 'gii'; $config['modules ']['gii'] = [ 'class' => 'yii\gii\Module', // uncomment the following to add your IP //'allowedIPs' => ['127.0.0.1', '::1'], ]; } 这段配置表明,如果当前是开发环境,应用会包含gii模块,模块类是yii\gii\Module。 r=gii 点击Preview预览,最后点击Generate生成所有文件,请确保modules文件夹有可写的权限。
模块的搭建 关于如何生成模块,我们可以使用GII来进行生成. 配置 GII 打开 api/config/main-local.php 文件 修改如下: if (! modules']['debug'] = [ 'class' => 'yii\debug\Module', ]; $config['bootstrap'][] = 'gii '; $config['modules']['gii'] = [ 'class' => 'yii\gii\Module', 'allowedIPs' => ['127.0.0.1 (#403), 你可以根据自己的需要来进行配置,或者不配置 生成Modules 浏览器中输入 http://your host/gii ,可以看到 Module Generator ,点击 Start 我们刚才访问的 defaults 其实就是这两个文件,和传统的web项目一样控制器渲染视图 好了,你可能知道了,我们以后的控制器代码就放到 modules/v1/controllers 里了 刚才仅仅是默认GII
然后他可以采取行动:要么弃牌,要么 GII。(GII 对于 SB 意味着全押(shove),对于 BB 意味着跟注)。然后得到奖励——这是玩家赢得的钱数,在最后的手牌中我们将使用玩家的总筹码大小。 这对应于特征:如果 isGII 则为 rank2/numRanks,否则为 0,意思为玩家排名较高手牌时的 GII 策略。 如果 SB 执行 GII 策略,则最后一个特征也非零。所以,-0.15230302 为 SB 执行弃牌时的附加值。 这样,该模型可以区分 SB GII 与 BB GII 的增量值。 注意,该模型仍然无法捕获很多细微的细节。 最后,我们可以生成一些 SVG 来在 Jupyter 环境中绘制 GII 范围: ? ? 我们怎么选择呢?
modules']['debug'] = [ 'class' => 'yii\debug\Module', ]; $config['bootstrap'][] = 'gii '; $config['modules']['gii'] = [ 'class' => 'yii\gii\Module', ]; } return $config; 第四步 40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; 兄弟们,然后gii:model curd表哈” <?
//'allowedIPs' => ['127.0.0.1', '::1'], ]; $config['bootstrap'][] = 'gii'; $config['modules ']['gii'] = [ 'class' => 'yii\gii\Module', // uncomment the following to add your IP => [ 'class' => 'app\modules\v1\Module', ], ], 放在这里: 然后是: 生成数据库中news表的gii
modules']['debug'] = [ 'class' => 'yii\debug\Module', ]; $config['bootstrap'][] = 'gii '; $config['modules']['gii'] = [ 'class' => 'yii\gii\Module', ]; } return $config; 第四步
40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; 然后gii生成到common/models下. modules']['debug'] = [ 'class' => 'yii\debug\Module', ]; $config['bootstrap'][] = 'gii '; $config['modules']['gii'] = [ 'class' => 'yii\gii\Module', ]; } return $config; 第四步
modules']['debug'] = [ 'class' => 'yii\debug\Module', ]; $config['bootstrap'][] = 'gii '; $config['modules']['gii'] = [ 'class' => 'yii\gii\Module', ]; } return $config; 配置
2、操作步骤 背景:这里针对GII自动生成的CURL中,增加关联表字段。 需求:A表中有一个字段pt_id关联B表;现在需要在基于A表GII生成的CURL的基础上,增加A表关联B表字段的name值,并且带有搜索排序功能。
第二步:user:gii自动生成 models: <?
InvalidArgumentException The file or directory to be published does not exist: /var/www/yii-demo/vendor/yiisoft/yii2/gii