Używam JMS\I18nRoutingBundle
,i Gedmo\Sluggable
. Trasy z domyślnymi lokalizacjami również działają, ale inne ustawienia lokalne działają bez przetłumaczonego pliku. Moja i18n routingu mają następujące ustawienia:Niestandardowe trasowanie i18n w Symfony
# Doctrine extensions
stof_doctrine_extensions:
default_locale: %locale%
translation_fallback: true
orm:
default:
#…
sluggable: true
translatable: true
loggable: false
#…
jms_i18n_routing:
default_locale: cs_CZ
locales: [cs_CZ, en_US]
strategy: custom
hosts:
cs_CZ: example.cz
en_US: example.com
redirect_to_host: true
Kiedy skonfigurować trasę tak:
hw_category:
pattern: /category/{slug}
defaults: { _controller: AcmeSiteBundle:Category:detail }
/**
* @Template
*/
public function detailAction(Category $category)
{}
This trasy działa
example.cz/category/slug-in-czech
example.com/category/slug-in-czech
Ale chcę dostać praca example.com/category/slug-in-english
, która zgłasza 404 wyjątek object not found
.
Gdzie powinienem załączyć 'TranslatableListener' - w którym pliku? – kuboslav
używasz StofDoctrineExtensionsBundle? – nifr
zaktualizowałem moją odpowiedź :) – nifr