Shortest way to get specific formData value from an internal Page-Reference?
Hey everyone,
if I have an internal page reference and need to get a specific value from the underlying page's formdata, is there a quicker way than:
lt_internal_link.getPageRef().page.getFormData().get(#global.languages, "pt_pageTitle").get
My wish would be something like:
lt_internal_link.pageData.get("pt_pageTitle")
-
Hello Sammy,
I assume that you are using the syntax within templatecode.
Then this should do the same (and is a little bit shorter):$CMS_VALUE(lt_internal_link.get.page.formData.pt_pageTitle)$
best regards,
Holger1 -
Ah super! Versuche ich heute einmal und geb nochmal Rückmeldung
0 -
Nope. Funktioniert leider nicht. :(
0 -
Hallo Sammy,
Hmm - gibt denn
$CMS_VALUE(lt_internal_link.get.page.formData.class)$
de.espirit.firstspirit.parser.eval.Undefined oder de.espirit.firstspirit.generate.IdentifiableIdProvidingFormData zurück?
Wenn es letzteres ist, was gibt denn dann$CMS_VALUE(lt_internal_link.get.page.formData.pt_pageTitle.class)$
zurück? ich bin davon ausgegangen, dass es ein Textfeld ist und somit sollte es ein String sein.
Wenn es ...undefined ist, dann ist irgendetwas null in der Aufrufkette. Dann einfach mal die einzelnen Elemente der Kette darauf prüfen, ob sie vorhanden sind, also lt_internal_link.class, lt_internal_link.get.class usw., um herauszufinden, wo es schief geht.
bei meinem Lösungsvorschlag bin ich davon ausgegangen, dass lt_internal_link die Rückgabe einer FS_REFERENCE Eingabekomponente ist, also eine TargetReference.
.get() würde dann den IDProvider zurückliefern. Sofern dies eine PageRef ist (wovon ich wiederum ausgegangen bin), liefert getPage() die Page zurück und getFormData() das FormData Objekt der Page. Bei diesem gibt es in der TemplateSyntax die Kurzschreibweise mit ".<Name der Eingabekomponente>" mit der man den Inhalt der entsprechenden Eingabekomponente bekommt.Bei der verkürzten Schreibweise kann man aus ".get<IrgendeinName>()" einfach ".irgendeinName" machen.
Ohne den Kontext des Projektes ist es schwierig, meinen Denkfehler zu finden. Insofern hoffe ich, dass diese Erklärungen (und Hinweise zur Fehlersuche) weiterhelfen :)
Viele Grüße,
Holger1 -
Huh. Merkwürdig.
Jetzt geht es plötzlich genau wie du gesagt hast.
Da muss ich vorher irgendwo nen kleinen Tippfehler oder was gehabt haben.
Vielen Dank für die Unterstützung!
0
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.
Kommentare
5 Kommentare