Locale Switcher with use_controller not working in Symfony 4
I tried to use LocaleBundle in a Symfony 4 project that also uses flex and when I try to use LocaleSwitcher along with use_controller=true, then it triggers the following error:
'Invalid resource "/vagrant/var/cache/dev/lunetics_locale/routing.yml" passed to the "service" route loader: use the format "service_name:methodName"'
I found that this is set in RouterResourcePass which sets router.resource as /vagrant/var/cache/dev/lunetics_locale/routing.yml and it is expecting something like the kernel:loadRoutes that is loaded by default in the router config.
This is my router config (default):
framework:
router:
strict_requirements: ~
And this is the bundle config:
lunetics_locale:
guessing_order:
- router
- session
- browser
allowed_locales:
- en
- es
- fr
cookie:
set_on_change: true
switcher:
template: LocaleSwitcher/switcher_links.html.twig
use_controller: true
use_referrer: true
redirect_to_route: homepage
redirect_statuscode: 302
Am I doing something wrong? Or is this an incompatibility with Symfony 4? Thanks in advance.
afaik there is no testing with Symfony 4. there is #203 which tries to fix another issue in Symfony 4.
this error sounds like a change in symfony, can you check if you find a changelog or upgrade notes for what should be done? @lunetics seems not very active on this anymore, but i can also merge pull requests to help out.
Old issue i know, but i'm currently porting to symfony 4+ / php 7.1+ only