讲师中心 微信公众号
AI工具推荐 视频效率加速

Yii2怎么在Linux下用命令行创建控制器_gii命令行生成代码【操作】

酷宇同学_3914

酷宇同学_3914

发布时间:2026-03-29 10:45:17

|

345人浏览过

|

来源于php中文网

原创

yii controller/create 是 Yii2 命令行下唯一可用的控制器生成命令,用于生成空控制器骨架,不依赖 Gii,需手动补 action、视图及路由配置。

yii2怎么在linux下用命令行创建控制器_gii命令行生成代码【操作】

yii gii/controller 命令在 Linux 下根本不能直接用

因为 gii 是 Yii2 的 Web 界面工具,官方没提供命令行版的 gii/controller。你敲 ./yii gii/controller 肯定报错:Unknown command "gii/controller" —— 这不是权限或路径问题,是功能压根不存在。

真正能用的命令行代码生成器是 yii controller/create(注意不是 gii),它属于 Yii2 内置的 console 命令,不依赖 Gii 扩展,也不需要 Web 服务运行。

  • 必须确保 console/config/main.php 中已启用 'controller' => 'yiiconsolecontrollersControllerController'(默认已配好)
  • 项目根目录下执行,不是在 console/ 子目录里
  • 控制器名用驼峰(如 UserProfile),别写成 user-profile 或 user_profile,否则生成的类名和文件名会出错

用 yii controller/create 创建控制器的正确姿势

这个命令只生成空控制器骨架,不带 action、不建视图、不配路由 —— 和 Gii 的“一键全包”完全不同,得自己补。

执行示例:./yii controller/create user-profile

Yii Framework 2.0.51
Yii Framework 2.0.51

Yii Framework 2.0.51 官方 Basic 应用模板,适合旧项目兼容、升级验证和开发测试。

下载
  • 命令末尾的 user-profile 会被转成 UserProfileController 类名,文件存到 controllers/UserProfileController.php
  • 如果加 --namespace=app\controllers\v2,会生成命名空间并创建对应子目录(需手动建 controllers/v2/)
  • 不支持批量生成多个控制器;想建 PostController 和 CommentController,得分别跑两次命令
  • 生成后记得检查 controllers/ 目录权限:Linux 下有时因 umask 导致新文件不可读,Web 服务会 500

为什么不用 Gii 命令行?它真没实现

有人翻过 Yii2 源码就知道:yiigii 扩展只注册了 Web 路由(/gii/*),所有逻辑都基于 yiiwebController,而 console 应用用的是 yiiconsoleController,两者基类不兼容。

强行把 Gii 模块挂到 console 配置里也没用 —— 它依赖 Request、Response、View 等 Web 组件,console 环境里一调就抛异常。

  • 社区有第三方脚本(如 yii2-gii-console),但维护停滞、不兼容 2.0.40+、无测试覆盖,线上项目别碰
  • 如果你真需要 Gii 的模板能力(比如自动生成 CRUD 视图),只能老实用浏览器打开 http://your-site/gii
  • 别试图改 vendor/yiisoft/yii2-gii 源码来“命令行化”,升级时会被覆盖,且 Gii 的表单交互逻辑不适合 CLI 场景

Linux 下执行失败的三个高频原因

不是命令写错,而是环境卡点。常见报错和解法:

  • Permission denied: ./yii → 给执行权限:chmod +x yii(别漏掉 +)
  • PHP Fatal error: Class 'Yii' not found → 当前目录不是 Yii2 项目根目录,或者 vendor/autoload.php 被误删
  • Exception 'yiiaseInvalidConfigException' with message 'Controller not found' → console/config/main.php 里 'controllerMap' 被手动删了或写错了 key,确认存在 'controller' => 'yiiconsolecontrollersControllerController'

复杂点在于:命令行生成的控制器默认不注册 URL 规则,user-profile/index 这种路由要自己在 config/web.php 里配 urlManager 规则,不然浏览器打不开 —— 这一步 Gii 会自动提示,而 console 命令完全不管。

热门AI工具

更多
UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

相关专题

更多
scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

989

2023.10.18

500error怎么解决
500error怎么解决

500error的解决办法有检查服务器日志、检查代码、检查服务器配置、更新软件版本、重新启动服务、调试代码和寻求帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2960

2023.10.25

class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

3936

2024.01.03

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

306

2025.12.06

console接口是干嘛的
console接口是干嘛的

console接口是一种用于在计算机命令行或浏览器开发工具中输出信息的工具,提供了一种简单的方式来记录和查看应用程序的输出结果和调试信息。本专题为大家提供console接口相关的各种文章、以及下载和课程。

856

2023.08.08

console.log是什么
console.log是什么

console.log 是 javascript 函数,用于在浏览器控制台中输出信息,便于调试和故障排除。想了解更多console.log的相关内容,可以阅读本专题下面的文章。

6283

2024.05.29

http500解决方法
http500解决方法

http500解决方法有检查服务器日志、检查代码错误、检查服务器配置、检查文件和目录权限、检查资源不足、更新软件版本、重启服务器或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

3523

2023.11.09

http请求415错误怎么解决
http请求415错误怎么解决

解决方法:1、检查请求头中的Content-Type;2、检查请求体中的数据格式;3、使用适当的编码格式;4、使用适当的请求方法;5、检查服务器端的支持情况。更多http请求415错误怎么解决的相关内容,可以阅读下面的文章。

874

2023.11.14

Playwright 测试失败怎么办
Playwright 测试失败怎么办

Playwright测试失败专题汇集超时、定位器匹配、浏览器提前关闭、依赖与插件配置、文件上传、SSL及Docker启动等故障文章,并介绍通过截图、报告和Trace定位错误。

0

2026.10.21

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Yii Framework 2.0 API 官方文档
Yii Framework 2.0 API 官方文档

共0课时 | 0人学习

Yii2.0框架开发实战视频教程
Yii2.0框架开发实战视频教程

共22课时 | 9.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn