我正在尝试翻译我的项目。
我在src / AppBundle / Translations /
中创建了翻译文件en_EN.yml
title : Welcome to my Blog!
welcome.text : Hello! It's my personal blog.
welcome.text.description : I'm gonna use this for showing what i can :)
menu.main : Main
sidebar.account.anonymous : Log in
sidebar.account.logged : Account
sidebar.about.title : About me
sidebar.about.text : My name is Tigran Muradyan. Besides programming, I have lots of hobbies. One of them - playing on piano :)
sidebar.contact.title : Contact me
user.login : Login
user.password : Password
user.remember : Remember me
user.gender : Gender
user.phone : Phone
user.email : Email
user.about : About me
user.account.information : Account information
user.logout : Log out
article.creation.date : Creation date
article.author : Author
article.read.more : Read more
comments : Comments
comments.anonymous : Please log in to leave a comment.
comments.logged : Leave a comment
ru_RU.yml
title : Добро пожаловать на мой блог!
welcome.text : Привет! Это мой личный блог.
welcome.text.description : Я использую его, чтобы показать, что я умею :)
menu.main : Главная
sidebar.account.anonymous : Зайдите на сайт
sidebar.account.logged : Профиль
sidebar.about.title : Обо мне
sidebar.about.text : Меня зовут Тигран Мурадян. Помимо программирования, у меня есть много хобби. Одно из них - фортепиано :)
sidebar.contact.title : Свяжитесь со мной
user.login : Логин
user.password : Пароль
user.remember : Запомнить
user.gender : Пол
user.phone : Телефон
user.email : Электронная почта
user.about : Обо мне
user.account.information : Информация о аккаунте
user.logout : Выйти
article.creation.date : Дата публикации
article.author : Автор
article.read.more : Читать подбробнее
comments : Комментарии
comments.anonymous : Пожалуйста, зайдите под своим аккаунтом. чтобы оставить комментарий.
comments.logged : Оставить комментарий
但是当我输入模板{{welcome.text | trans}}时,它表示找不到变量。
我认为问题出在我的翻译设置中。他们在这里
framework:
#esi: ~
translator: { fallbacks: ["%locale%"] }
secret: "%secret%"
router:
resource: "%kernel.root_dir%/config/routing.yml"
strict_requirements: ~
form: ~
csrf_protection: ~
validation: { enable_annotations: true }
#serializer: { enable_annotations: true }
templating:
engines: ['twig']
#assets_version: SomeVersionScheme
default_locale: "%locale%"
trusted_hosts: ~
trusted_proxies: ~
session:
# handler_id set to null will use default session handler from php.ini
handler_id: ~
fragments: ~
http_method_override: true
我应该如何设置翻译以及如何加载翻译?
谢谢
编辑:
paramaters.yml
# This file is auto-generated during the composer install
parameters:
database_host: localhost
database_port: null
database_name: blog
database_user: root
database_password: null
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null
secret: a2cb7f1e0ff91931e4c325b072ba3b6e34af4aa6
答案 0 :(得分:1)
因为你没有变量welcome.text
吗?如果你使用没有撇号的文本,Twig期望变量而不是文本。正确的方法是:
{{ 'welcome.text' | trans }}
答案 1 :(得分:0)
完整的框架文档可以在http://symfony.com/doc/current/reference/configuration/framework.html#translator
找到您的%locale%
参数似乎缺失,应在parameters.yml.dist
中定义。
将composer install
参数文件解析为parameters.yml
后。
请参阅http://symfony.com/doc/current/best_practices/configuration.html