Add support for controller method pairs in routing#279
Open
CodeWithKyrian wants to merge 2 commits intoclue:mainfrom
Open
Add support for controller method pairs in routing#279CodeWithKyrian wants to merge 2 commits intoclue:mainfrom
CodeWithKyrian wants to merge 2 commits intoclue:mainfrom
Conversation
- Fixed PHPStan error in Container::callableMethod by adding assertion for object type - Added test cases for callableMethod error handling with nonexistent classes and loading failures - Improved overall test coverage for Container class to 100%
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds support for using controller-method pairs in route definitions using array notation
[Controller::class, 'method']. This enhancement allows developers to group related actions into controller classes while keeping the routing concise.Changes
callableMethodinContainerclass to handle controllers with named methodsRouteHandler::mapto detect and support[ControllerClass::class, 'method']syntaxBenefits
Example
The implementation maintains the same dependency injection capabilities and performance characteristics as the existing approach with invokable controllers.