codeigniter4 / codeigniter4/CodeIgniter4
AutoRouterImproved extendability
- 主要语言
- PHP
- 星标
- 6k
- 派生
- 2k
- 平均合并
- 1 天 11 小时
- 30 天内合并 PR
- 73
描述
In the current state, the `AutoRouterImproved` is not thought to be replaced by an App-Specific service and to be extended on.
>[kenjis](https://github.com/codeigniter4/CodeIgniter4/issues/5889#issuecomment-1476185230): Because it is better to implement the interface, not extending the class.
In my case, I need to change the controller & method name which is already implemented in the router.
Re-Implementing the `AutoRouterImproved` to do that seems kinda ridiculous.
Two approaches come to my mind:
1. The specific solution: Use the "parent" routers methods for finding the method and controller name, this prevents duplicate code and allows for a little app-specific behavior.
2. The generic solution: Make the auto routers replaceable by app-specific services
1. Optional: make both extendable, so we don't have to write ridiculous amounts of code for small changes.
贡献指南
调研方向
首先阅读 AutoRouterImproved 以及它目前用于查找控制器和方法名称的父路由器方法。比较两种提议的方案:复用父路由器的行为,或通过应用特定的服务使自动路由器可替换且可扩展。完成的标准是确定一种设计,并实现无需复制路由器即可更改控制器和方法名称的功能。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- php
- 领域
- backend
- Issue 类型
- 功能
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100