本文介绍了在 Yii 2.0 中针对租户任务类型与步骤设置的编辑更新实现,为配合 UI 设计并降低前端开发难度,将原有的单一更新接口拆分为新建、更新及删除任务类型三个独立接口。文章详细说明了保留批量更新路由配置的方法,调整了模型与服务文件,并通过 Postman 测试验证了各接口对任务配置表及任务步骤配置表的 SQL 操作逻辑。最终实现了拆分后的接口与前端界面的一致性,确保了数据的准确更新。
在 Rap 工具的使用中发现某接口文档的字号显示异常小于其他文档。经排查分析,定位原因为数据结构定义中的 object 标记丢失,随后决定将数据类型描述由 array 修改为 array。修改操作完成后,文档字号显示恢复正常,符合预期效果,成功解决了字号不一致的问题。
本文介绍了在 Yii 2.0 中实现租户任务类型与步骤设置的编辑与更新功能,解决用户需自主添加任务类型并从步骤中选择的问题。通过数据库迁移调整表结构,利用默认记录与租户自定义记录区分逻辑,编写了控制器、服务层与模型代码。经过 Postman 测试验证了数据读取、新增、删除及排序的正确性,最终 SQL 分析确认索引合理,满足多租户场景下树形结构数据的配置需求。
本文介绍了在 Yii 2.0 中实现多租户自定义任务类型与步骤设置的方法。通过新建租户配置表、服务层及模型层,实现了未自定义时默认全部勾选,自定义后支持增删改及软删除操作。针对步骤顺序未生效的 Bug 进行了修复,最终确保了基于租户配置的任务创建验证与步骤插入的正确性。
本文针对 Docker 容器中 Nginx PHP 环境访问 PHP 文件时出现 404 Not Found 的问题进行了分析。在确认访问 HTML 文件正常且检查 Nginx 配置文件后,发现是由于配置文件中存在重复的 location 配置项导致前者被覆盖。通过删除重复的配置项并重启服务,再次访问 PHP 文件时成功返回 200 状态码,问题得到解决。
文章介绍了基于 Supervisor 和 bash sleep 实现 Docker 部署中类 crontab 任务以降低内存占用的过程。通过编辑配置文件调整脚本执行间隔,并在测试环境检测运行状态与异常处理情况。实验发现将 sleep 时间控制在合理范围并调整 startsecs 参数可有效降低内存,最终在两个产品环境中验证了该方法能显著减少 Docker 容器的内存占用并符合预期。
针对 yiisoft/yii2-app-advanced 项目,本文介绍了在 MySQL 日志表累积数百 GB 数据的背景下,基于控制台命令行实现日志消息自动定时删除的方法。操作包括编写 LogController,在凌晨时段按每日批次删除过期数据,通过延缓执行机制避免性能影响。最终配置保留时间参数后,成功将开发环境日志表数据量缩减至 2.36 GB,达到了清理与性能的平衡。
本文针对 Yii 2.0 中文件上传接口在多场景下复用的问题,通过引入 scenario 参数区分不同验证规则,并利用模型规则的 on 属性实现了差异配置。文章详细记录了在 UploadAction 和 Upload 文件中的具体修改过程,结合参数配置,验证了不同场景下对文件扩展名和数量的限制,最终通过在接口中增加场景判断,实现了既允许多文件验证又仅上传首个文件的预期逻辑。
👨💻 个人品牌
王世强|技术实践者 · 独立博客作者
15+ 年 Web 与系统实践经验,持续关注网站基础设施、系统优化、AI 工具与自动化。
持续运营技术博客 10+ 年,累计发布 1000+ 篇原创技术文章。
长期建设个人项目,也欢迎合适的技术交流、咨询与合作。
.env (14) 404 (14) add (16) AI 翻译 (36) Array (19) A Tour of Go (78) CentOS (23) ChatGPT (31) ChatGPT Plus (18) chrome (19) Cloudflare (40) Codex (27) composer (42) composer.json (22) composer update (14) console (16) Container (25) curl (16) delete (31) Docker (32) Dockerfile (15) EdgeOne (35) environment variable (19) error (24) file (15) filter (20) Git (28) GitHub (23) Gitlab (15) GLM-5.2 (27) Go (80) go-tour-i18n (16) Google AdSense (30) Go 语言 (24) GraphQL (24) GraphQL API (14) Gutenberg (36) http (21) https (23) Interface (19) json (24) Laravel (37) Laravel 6 (55) Laravel 9 (25) Lighthouse (17) Lighthouse 5 (14) Linux (22) Module (17) MySQL (78) MySQL 5.7 (22) Nginx (63) normalize.css (28) OKX (15) OneinStack (21) PHP (67) php-fpm (19) php.ini (24) PHP 7.1.12 (22) PHP 7.4 (26) phpmyadmin (15) PhpStorm (24) Polylang (59) postman (18) Query (17) queue (16) Rancher (24) Redis (52) RESTful (27) RESTful API (23) SEO (14) Shopify (19) SlyTranslate (22) SQL (24) String (14) TortoiseGit (14) Twenty Twenty-Five (20) Ubuntu (43) update (20) VPN (17) W3 Total Cache (41) Windows 10 (46) WireGuard (29) WordPress (136) WPCode (23) Wstunnel (16) Yii (40) Yii 2 (70) Yii 2.0 (51) ZgoCloud (14) 国际化 (17) 多语言 (14) 多语言翻译 (50) 开源项目 (16) 技术博客 (15) 故障排查 (20) 数据库迁移 (16) 本地化 (22) 浏览器 (14) 阿里云 (20) 页面缓存 (14)