ดังนั้นฉันมีโหนดนี้:
object(Drupal\node\Entity\Node)[1862]
protected 'values' =>
array (size=17)
'vid' =>
array (size=1)
'x-default' => string '7' (length=1)
'langcode' =>
array (size=1)
'x-default' =>
array (size=1)
0 =>
array (size=1)
'value' => string 'en' (length=2)
... (more fields)
'field_image' =>
array (size=1)
'x-default' =>
array (size=1)
0 =>
array (size=5)
'target_id' => string '1' (length=1)
'alt' => string '' (length=0)
'title' => string '' (length=0)
'width' => string '150' (length=3)
'height' => string '120' (length=3)
ตอนนี้ field_image มีอาร์เรย์พร้อม x-default และข้อมูลรูปภาพพื้นฐานบางอย่าง ฉันจะแสดงรูปภาพหรือสร้างลิงค์ไปยังรูปภาพภายในเทมเพลต Twig ได้อย่างไร
Recoverable fatal error: Object of class Drupal\Core\Field\FieldItemList could not be converted to string
ดังนั้นฉันพยายามมันด้วยนี้ url(node.field_image.0.entity.uri.value)
แต่แล้วมันก็บอกฉันนี้:Twig_Error_Runtime: An exception has been thrown during the rendering of a template ("Route "public://image.png" does not exist.")
FieldItemList
s เป็นตัวแทนสตริง (ซึ่งฉันไม่สามารถหา)
url()
ต้องการเส้นทาง แล้วไงurl_from_path(node.field_image.0.entity.uri.value)
ล่ะ
url_from_path()
ดูเหมือนจะสร้างสิ่งนี้: http://mywebsite.local/public%3A//image.png
ดังนั้นจึงดูเหมือนว่าเป็น urlencoding และผนวกค่าที่แน่นอนเข้ากับ url
url(node.field_image.0.entity.uri)
( ปัญหาที่เกี่ยวข้อง )