Обмеження Twig

Дата оновлення перекладу 2025-07-27

Обмеження Twig

7.3

Обмеження Twig було представлено в Symfony 7.3.

Валідує, що заданий рядок містить валідний синтаксис Twig . Це особливо корисно, коли зміст шаблону створюється користувачем або є конфігурованим, і ви хочете переконатися, що він може бути відображений движком Twig.

Note

Використання цього обмеження вимагає встановленого пакету symfony/twig-bridge у вашому додатку (наприклад, шляхом запуску composer require symfony/twig-bridge).

?????????????? ?? ??????????? ??? ??????
???? Twig
????????? TwigValidator

Базове використання

Застосуйте обмеження Twig, щоб валідувати зміст будь-якої властивості або поверненого значення будь-якого методу:

1
2
3
4
5
6
7
use Symfony\Bridge\Twig\Validator\Constraints\Twig;

class Template
{
    #[Twig]
    private string $templateCode;
}
1
2
3
4
5
6
7
8
9
10
// src/Entity/Page.php
namespace App\Entity;

use Symfony\Bridge\Twig\Validator\Constraints\Twig;

class Page
{
    #[Twig]
    private string $templateCode;
}

Опції обмеження

message

тип: message за замовчуванням: Це значення не є валідним шаблоном Twig.

Це повідомлення відображається, якщо заданий рядок не містить валідний синтаксис Twig:

1
2
3
4
5
6
7
// ...

class Page
{
    #[Twig(message: 'Check this Twig code; it contains errors.')]
    private string $templateCode;
}

Це повідомлення не має параметрів.

skipDeprecations

тип: boolean за замовчуванням: true

Якщо true, то попередження про застарілість Twig ігноруються під час валідації. Встановіть як false, щоб викликати помилки валідації, якщо заданий код Twig
містить будь-які застарілості:

1
2
3
4
5
6
7
// ...

class Page
{
    #[Twig(skipDeprecations: false)]
    private string $templateCode;
}

Це може бути корисним при застосуванні суворіших правил шаблонів або при підготовці до оновлення до старшої версії Twig.