twigテンプレートで| date( "d F、Y")フィルターに問題があります。
月をスウェーデン語で出力したいです。 parameters.ymlファイルに「locale:sv」を設定しようとしましたが、効果がありません。
Symfony 2.1から2.3にアップグレードする前に機能していたので、それは何か関係があると思います。
これを修正する方法についての考えはありますか?
Twig Intl Extension
Twig Intl Extension を使用できますfabpotの公式Twig拡張 repository 。
次のように使用できるローカライズされた日付フィルターを提供します。
{{ date | localizeddate('full', 'none', app.request.locale ) }}
現在のロケールの3番目のパラメーターとしてapp.request.locale
を使用するか、単に'sv'
を使用します。
プロジェクトへの統合
次を使用して、composer.json
に公式の拡張機能を追加します。
composer require twig/extensions:1.0.*@dev
composer update twig/extensions
config.yml
#enable intl extensions
services:
twig.extension.intl:
class: Twig_Extensions_Extension_Intl
tags:
- { name: twig.extension }
簡単なヒント:
別の便利な拡張機能は、truncateなどのフィルターを提供するText拡張機能です
services:
twig.extension.text:
class: Twig_Extensions_Extension_Text
tags:
- { name: twig.extension }
|date
フィルターの使用DateTime::format
ロケールをサポートしない関数。 この質問 を参照して、独自のtwig拡張機能を記述してください。
@nifrが投稿したソリューションに追加します。
日付形式を使用するには、Twig Intl Extensionをインストールします。使用できるものは次のとおりです。
{{ date|localizeddate('none', 'none', app.request.locale, null, 'dd MMMM, yyyy') }}
私の例の最後の引数は日付形式です-ここにドキュメントがあります: http://userguide.icu-project.org/formatparse/datetime
Twig Intl Extensionのドキュメント: https://twig-extensions.readthedocs.io/en/latest/intl.html