Entonces tengo este nodo:
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)
Ahora field_image tiene una matriz con x-default y algunos datos de imagen básicos. ¿Cómo muestro la imagen o creo un enlace a la imagen dentro de la plantilla Twig?
Recoverable fatal error: Object of class Drupal\Core\Field\FieldItemList could not be converted to string
así que lo intenté con esto: url(node.field_image.0.entity.uri.value)
pero luego solo me dice esto:Twig_Error_Runtime: An exception has been thrown during the rendering of a template ("Route "public://image.png" does not exist.")
FieldItemList
s en una representación de cadena (que no puedo encontrar)
url()
quiere una ruta. ¿Qué tal url_from_path(node.field_image.0.entity.uri.value)
?
url_from_path()
parece generar esto: http://mywebsite.local/public%3A//image.png
por lo que parece estar codificando y agregando el valor exacto a la url
url(node.field_image.0.entity.uri)
( problema relevante )