merged branch fabpot/global_route_settings (PR #326)
Commits ------- eaf176d3 added a Route class e3ddad54 added the possibility for settings set on a controller collection to influence controllers register later on 0356873a changed Controller::generateRouteName() visibility 31652440 added a way to define settings for all routes of a collection (closes #186) Discussion ---------- added a way to define settings for all routes of a collection (closes #186) see the ticket and docs from the patch. --------------------------------------------------------------------------- by fabpot at 2012-05-21T13:00:13Z ok, I've changed the strategy to what I've described above. ping @igorw --------------------------------------------------------------------------- by igorw at 2012-05-21T16:09:56Z `ControllerCollection extends Controller` is weird. I see how some code can be re-used, but a controller cannot be frozen or named, so those parts don't really make sense to me. Apart from that it's a nice feature. If you can come up with a cleaner way to do it that doesn't bloat the code too much, that'd be nice. --------------------------------------------------------------------------- by fabpot at 2012-05-21T16:30:16Z What about creating a `Route` class that extends the Symfony `Route` class? It would contain the `assert`, `value`, `requireHttp`, `requireHttps`, `convert`, and `middleware` methods. Then, `Controller` and `ControllerCollection` extend this new `Route` class. --------------------------------------------------------------------------- by fabpot at 2012-05-21T16:33:23Z Extending the `Route` is not necessarily a good idea either. What about creating this `Route` class and compose it into both `Controller` and `ControllerCollection`? --------------------------------------------------------------------------- by fabpot at 2012-05-21T16:33:50Z That's what my last commit does. --------------------------------------------------------------------------- by fabpot at 2012-05-21T16:36:34Z By the way, a Trait would probably have been the best solution.
Showing
src/Silex/Route.php
0 → 100644
Please register or sign in to comment