如何使用可用语言环境的参数?

how to use a parameter for the available locale?

在 symfony 项目中,我不想为每个路由定义可用的语言环境,而是使用参数。

所以跟随 doc 而不是知晓:

team:
    resource: "Route/TeamRouting.yaml"
    prefix: /{_locale}/team/
    requirements:
        _locale: en|fr

我用过:

team:
    resource: "Route/TeamRouting.yaml"
    prefix: /{_locale}/team/
    requirements:
        _locale: '%supported_locales%'

在我的 service.yaml 文件中我定义了:

parameters:
    locale: 'en'
    supported_locales: ['en', 'es', 'fr']

不幸的是,我收到以下错误:

The container parameter "supported_locales", used in the route configuration value "%supported_locales%", must be a string or numeric, but it is of type array.

那么我需要如何将我的参数引入到需求中呢?

您需要像这样为此参数设置一个字符串:

parameters:
    locale: 'en'
    supported_locales: 'en|es|fr'