- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Werte aus verschachtelter FS_LIST holen
Hallo Community,
folgende Problemstellung:
Ich habe eine FS_LIST (name = st_product_selection) vom Typ INLINE, in der ich einen Absatz verwende, der wiederum eine FS_LIST (Name = st_prods) vom Typ DATABASE enthรคlt.
Ich mรถchte mir nun im Ausgabetemplate der "รคuรeren" FS_LIST eine Liste nur der Datensรคtze, die in der inneren FS_LIST enthalten sind, ausgeben.
Etwas fehlt mir noch. Folgendermassen sieht es bisher aus:
$CMS_FOR(_categories,st_product_selection)$
$CMS_VALUE(st_product_selection.get(#for.index).get(#global.project.masterLanguage,"st_prods").get().length())$ $-- Gibt mir die korrekte Anzahl der Elemente der inneren FS_LIST aus--$
$CMS_FOR(_products,_categories.get(#for.index).get(#global.project.masterLanguage,"st_prods").get())$ $-- Was ist falsch ? --$
$CMS_VALUE(_products.Prodid)$
$CMS_END_FOR$
$CMS_END_FOR$
Leider ist die Konstellation genau so notwendig.
Gruร Arnold
- Labels:
-
Developers
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Der Ausdruck im inneren CMS_FOR ist kein Liste, das besagt auch die Fehlermeldung. Der Kommentar "Gibt mir die korrekte Anzahl der Elemente der inneren FS_LIST aus" deutet darauf hin, das das Element in der gelรถschten Code-Zeile aber schon eine Liste war.
Dann sollte es wahrscheinlich so funktionieren:
$CMS_FOR(_category, st_product_selection)$
$CMS_FOR(_product,_category.get(#global.project.masterLanguage,"st_prods").get())$
$CMS_VALUE(_product.Prodid)$
$CMS_END_FOR$
$CMS_END_FOR$
Die รคuรere Schleife itertiert รผber die รคuรere FS_LIST und liefert Elemente vom Typ FormData. Die innere Schleife holt sich dann die die FS_LIST mit dem Feld-Namen "st_prods" und iteriert รผber dessen Werte.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Wie sieht denn die entsprechende Fehlermeldung aus? Ist "Prodid" ein gรผltiger Name im inneren Formular?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hallo,
keine Ausgabe im Template.
Fehler der Vorschau:
04.11.2014 11:25:36.096 ERROR ($CMS_FOR( _products, _categories.get(#for.index).get(#global.project.masterLanguage, "st_prods").get() )$ at 69, 2): Cannot iterate over: class de.espirit.firstspirit.parser.eval.Undefined'
Prodid' ist der Spaltenname in der Tabelle, habe es aber auch mit dem Namen des Formularfeldes versucht.
Gruร Arnold
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ist der Zugriff im 2. CMS_FOR korrekt? Zwei Zeilen hรถher benutzt du einen anderen Zugriff:
$CMS_VALUE(st_product_selection.get(#for.index).get(#global.project.masterLanguage,"st_prods").get().length())$ $-- Gibt mir die korrekte Anzahl der Elemente der inneren FS_LIST aus--$
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Sorry, die von dir zitierte Zeile brauch ich nicht wirklich, wollte nur sehen, ob ich die korrekte Anzahl der (inneren) Datensรคtze bekomme, was auch der Fall ist.
Also wie folgt:
$CMS_FOR(_categories,st_product_selection)$
$CMS_FOR(_products,_categories.get(#for.index).get(#global.project.masterLanguage,"st_prods").get())$
$CMS_VALUE(_products.cs_prodid)$
$CMS_END_FOR$
$CMS_END_FOR$
st_product_selection = รคuรere FS_LIST
st_prods = innere FS_LIST
Gruร Arnold
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Der Ausdruck im inneren CMS_FOR ist kein Liste, das besagt auch die Fehlermeldung. Der Kommentar "Gibt mir die korrekte Anzahl der Elemente der inneren FS_LIST aus" deutet darauf hin, das das Element in der gelรถschten Code-Zeile aber schon eine Liste war.
Dann sollte es wahrscheinlich so funktionieren:
$CMS_FOR(_category, st_product_selection)$
$CMS_FOR(_product,_category.get(#global.project.masterLanguage,"st_prods").get())$
$CMS_VALUE(_product.Prodid)$
$CMS_END_FOR$
$CMS_END_FOR$
Die รคuรere Schleife itertiert รผber die รคuรere FS_LIST und liefert Elemente vom Typ FormData. Die innere Schleife holt sich dann die die FS_LIST mit dem Feld-Namen "st_prods" und iteriert รผber dessen Werte.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Vielen Dank, das war's.
Gruร Arnold
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Super! Schรถn das ich helfen konnte

