Twig: Как показывать контент только в том случае, если есть перевод?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Twig: Как показывать контент только в том случае, если есть перевод?

Сообщение Anonymous »


{% for job in jobs %}
{% if job.subject|trans %}
{{ job.info }}
{% endif %}
{% endfor %}

У меня есть три языка перевода, только английский является обязательным. ATM задание отображается независимо от того, какой язык выбран (если не указан другой перевод, twig использует перевод en по умолчанию.
Я хочу, чтобы информация о задании отображалась только в том случае, если указан перевод задания на этот язык (если он существует в выбранном языковом стандарте). Как это возможно?
Исправлена ​​проблема:
Проблема устранена с некоторыми возвратами и в контроллере не идеально, но работает. (isLocale($locale, $job) просто проверяет возможность перевода ORA, если у задания есть тема в данной локали) :
public function indexAction(Request $request)

{

$repository = $this->getJobRepository();

$jobs = $repository->findBy(['active' => true], ['sortOrder' => 'ASC']);

return ['jobs' => $jobs];

$locale = $request->getLocale();

$localeJobs = array();

foreach ($jobs as $job){

if($this->isLocale($locale, $job)) array_push($localeJobs, $job);

}

return ['jobs' => $localeJobs];
}


Подробнее здесь: https://stackoverflow.com/questions/646 ... n-is-given
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»