分类: Web应用开发
-
本文介绍了在 Yii 2.0 中实现租户任务类型与步骤设置的编辑与更新功能,解决用户需自主添加任务类型并从步骤中选择的问题。通过数据库迁移调整表结构,利用默认记录与租户自定义记录区分逻辑,编写了控制器、服务层与模型代码。经过 Postman 测试验证了数据读取、新增、删除及排序的正确性,最终 SQL 分析确认索引合理,满足多租户场景下树形结构数据的配置需求。
-
本文介绍了在 Yii 2.0 中实现多租户自定义任务类型与步骤设置的方法。通过新建租户配置表、服务层及模型层,实现了未自定义时默认全部勾选,自定义后支持增删改及软删除操作。针对步骤顺序未生效的 Bug 进行了修复,最终确保了基于租户配置的任务创建验证与步骤插入的正确性。
-
文章介绍了基于 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 文件中的具体修改过程,结合参数配置,验证了不同场景下对文件扩展名和数量的限制,最终通过在接口中增加场景判断,实现了既允许多文件验证又仅上传首个文件的预期逻辑。
-
文章介绍了基于 supervisord 运行 PHP 命令行脚本的方法,通过编辑配置文件和初始化脚本,实现了利用 Rancher 环境变量控制脚本是否运行。测试表明,当环境变量设置为 true 时脚本正常运行,设置为 false 或未设置时不运行,从而支持集群部署时仅在单机中运行。文章最后建议参考特定网址修复临时文件夹的 Bug。
-
文章针对基于 Rancher 部署时出现的文件上传报错进行分析。通过检查日志确定原因为 PHP 缺少存储上传文件的临时文件夹,对比发现系统默认的 /tmp 目录被覆盖导致权限差异。排查后将相关配置文件迁移至新目录,并修改启动脚本将临时路径替换为 /mcloud,最终通过接口测试验证文件上传恢复正常。
-
本文探讨了在 Yii 2.0 框架中基于数据提供者实现类似禅道任务列表的排序功能。针对默认配置下无法实现主字段相同时按 ID 辅助排序的问题,文章通过配置 yii\data\Sort 属性的 asc 与 desc 元素,定义了包含 ID 的复合排序规则。测试结果表明,调整后的 SQL 查询 ORDER BY 子句能够正确执行单字段或组合字段的升序与降序排列,未定义的字段则回退至默认排序。
-
针对 Yii 2.0 框架中字段存储以逗号分隔的关键字需精准匹配而非模糊匹配的问题,文章通过复制核心类文件至公共组件目录并修改 ActiveDataFilter,新增了支持 MySQL FIND_IN_SET() 函数的特定条件构建器 fis。随后在控制器中配置字段过滤,最终生成了符合预期的 SQL 查询语句。
