Câu trả lời:
{{ entity.field_name.value }}
để có được giá trị thô thực sự, bao gồm các thẻ và mã hóa.
{{ node.body.value }}
<p>Batman & Robin</p>
{{ content.field_name.0 }}
để lấy các giá trị thô trừ các thẻ và mã hóa.
{{ content.body.0 }}
Batman & Robin
nguyên
Nên tránh bộ lọc này bất cứ khi nào có thể, đặc biệt nếu bạn xuất dữ liệu có thể do người dùng nhập. Xem trang này để biết thêm thông tin về tự động thoát trong Drupal 8.
nguồn: Bộ lọc - Sửa đổi biến trong mẫu Twig
Bộ lọc thô đánh dấu giá trị là "an toàn", điều đó có nghĩa là trong môi trường có chế độ thoát tự động được bật, biến này sẽ không được thoát nếu raw là bộ lọc cuối cùng được áp dụng cho nó
nguồn: tài liệu chính thức của Twig
Ví dụ: bạn có thể sử dụng:
{{ node.body.value|striptags }}
{{ paragraph.field_text.value|striptags }}
Vấn đề với việc sử dụng | thoát y của twig là mã hóa kép các thực thể html, không phải đánh dấu, vì vậy & trở thành & và sau đó & amp; - Berdir
<
và >
được hiển thị chính xác. Dấu và có lẽ đã được thoát một lần duy nhất trước khi bạn xuất nó. Nhưng câu hỏi là về một trường văn bản đơn giản , không phải là một trường văn bản có định dạng được xử lý bởi các bộ lọc văn bản. (Để trả lời câu hỏi không hỏi này, giá trị nguyên (nếu ai đó thực sự muốn điều đó) vẫn sẽ ở .value
và nó sẽ là một cách chính xác đơn bỏ trốn bằng cách Twig, vì lý do an ninh, bởi vì bạn không bao giờ nên ra một trường văn bản được định dạng không lọc)
&
đầu ra trong ví dụ của bạn là sai, điều này không xảy ra trong tự động định hình trừ khi nội dung trường đã được thoát một lần).
Bạn có thể sử dụng mô-đun Twig Field Value trong trường hợp này. Sau khi cài đặt mô-đun này, bạn sẽ có quyền truy cập vào dữ liệu một phần từ mảng kết xuất trường. Dành cho người cũ
{{ content.field_name|field_value }}
content.field_image|field_target_entity.uri.value
vv Thông tin thêm về trang dự án