Ich habe eine Onepage-Site. Der Manager funktioniert einwandfrei, aber das Anzeigen der hochgeladenen Bilder auf der Titelseite führt zu einem Fehler.
Meine onepage.yaml (siehe .afb)
tab3:
type: tab
title: Diensten
fields:
header.diensten:
name: diensten
type: list
label: Diensten blokken
style: vertical
fields:
.kop:
label: Kop
type: text
.afb:
label: Afbeelding
type: file
destination: 'self@'
multiple: false
accept:
- image/*
Ich habe also die Möglichkeit ein Bild hochzuladen:
Dies alles funktioniert gut.
Dann in meinem onepage.html.twig
<div class="d-blokken respons">
{% for diensten in page.header.diensten %}
<div class="item">
<img src="{{ diensten.afb }}" alt="" />
<h4>{{ diensten.kop }}</h4>
</div>
{% endfor %}
<div class="clear"></div>
</div>
Das {{ diensten.kop }} funktioniert hervorragend.
Es scheint, dass {{ diensten.afb }}
einen Fehler ausgibt.
"An exception has been thrown during the rendering of a template ("Array to string conversion")."
Muss ich .media oder eine andere Methode hinzufügen, um das Bild "aufzurufen"?
Habe gerade angefangen, mit Grav zu experimentieren. Braucht es einen Teil?! Habe echt keine Ahnung.
Wie in Slack erwähnt, ist diensten.afb
wahrscheinlich ein Array. Sie müssen in der Kopfzeilenstruktur des Seitenmarkdowns nachsehen und den Zweig entsprechend schreiben. Sie können es im Expertenmodus in Admin sehen.
Wenn es sich um ein Array handelt, müssen Sie es mit einer for-Schleife durchlaufen.
Entschuldigung, aber ich verstehe nicht.
Ich kann keine guten Beispiele finden, wie man es richtig macht.
Im Expertenmodus sagt Frontmatter:
diensten:
-
kop: Onderhoud
afb:
user/pages/03.test-2/README.jpg:
name: README.jpg
type: image/jpeg
size: 95277
path: user/pages/03.test-2/README.jpg
etc..
Das sieht für mich ok aus.
diensten.afb
ist ein Array. Sie können es nicht mit {{diensten.afb}}
drucken. Jetzt, da ich die Struktur sehe, können Sie {{(diensten.afb|first).path}}
schreiben, um den Dateipfad zu erhalten.
Vielen Dank an Flavio.
Hilfreichster Kommentar
diensten.afb
ist ein Array. Sie können es nicht mit{{diensten.afb}}
drucken. Jetzt, da ich die Struktur sehe, können Sie{{(diensten.afb|first).path}}
schreiben, um den Dateipfad zu erhalten.