-
-
Notifications
You must be signed in to change notification settings - Fork 9.8k
[Routing] allow setting multiple envs in #[Route] attribute
#61358
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Routing] allow setting multiple envs in #[Route] attribute
#61358
Conversation
|
I'm not entirely sure if this qualifies as a breaking change 🤔 |
|
I believe the errors in this PR will be resolved by PR #61360 😄. |
bf489ae to
a1ef1ee
Compare
dbeae07 to
4b5d99d
Compare
|
I think the errors aren't relevant in the context of this PR |
src/Symfony/Component/Routing/Tests/Fixtures/AttributeFixtures/RouteWithMultipleEnvs.php
Outdated
Show resolved
Hide resolved
4b5d99d to
67d8e1e
Compare
src/Symfony/Component/Routing/Tests/Fixtures/AttributeFixtures/RouteWithEnv.php
Outdated
Show resolved
Hide resolved
src/Symfony/Component/Routing/Tests/Fixtures/AttributeFixtures/RouteWithEnv.php
Outdated
Show resolved
Hide resolved
67d8e1e to
dcb540c
Compare
|
@GromNaN Thanks a lot for all your suggestions! I’ve made the changes ❤️ |
5fc6707 to
2f6564a
Compare
| return $this->env[0]; | ||
| } | ||
|
|
||
| public function setEnvs(array|string $env): void |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we have setters at all?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think adding the setter helps keep consistency with the current class design. But if you feel it’s unnecessary, I can remove it
just let me know 🫡
2f6564a to
4dbbede
Compare
4dbbede to
2ad7ff3
Compare
|
Thanks for the suggestions! 🙌 |
2ad7ff3 to
525ec95
Compare
|
Thank you @santysisi. |
Summary
This PR enhances the
Symfony\Component\Routing\Attribute\Routeattribute by allowing theenvparameter to accept an array of environment names. This change enables defining a single route that is conditionally available in multiple environments without duplicating route definitions.Before
To make a route available in both
devandtestenvironments, two separate route attributes were needed:After
Now, the same can be achieved with a single attribute by passing an array: