Hallo zusammen,
die Einrichtung des ContentCreators hakt eben bei einer Content-Projektion. Wir haben eine Seite für einzelne News-Einträge (1 Eintrag pro Seite), auf welcher sich eine FS_LIST-Eingabekomponente mit der Datasource "database" befindet. Dort können einem News-Eintrag nochmals Details hinzugefügt werden. Es handelt sich also um eine Tabellenvorlage (News), welche wiederum auf eine Tabellenvorlage (News Detail) innerhalb des gleichen Schemas verweist.
<FS_LIST name="cs_details" hFill="yes" height="500">
<DATASOURCE type="database" useLanguages="no">
<LABELS>
<LABEL lang="*">#item.cs_headline</LABEL>
</LABELS>
<ACTIONS>
<ACTION name="NEW">
<PARAM name="create-index">LAST</PARAM>
</ACTION>
<ACTION name="DELETE">
<PARAM name="show-confirm">YES</PARAM>
</ACTION>
<ACTION name="EDIT"/>
<ACTION name="DOWN"/>
<ACTION name="UP"/>
</ACTIONS>
<COLUMNS>
<COLUMN show="no">#identifier</COLUMN>
<COLUMN show="yes" sortOrder="ascending">cs_order_index</COLUMN>
</COLUMNS>
<LAYOUT>
<ADD component="toolbar" constraint="top"/>
<ADD component="overview" constraint="hide"/>
<ADD component="stackedview" constraint="center"/>
</LAYOUT>
<PERSISTENCEINDEX>order_index</PERSISTENCEINDEX>
<table>cms_news.t_news_details</table>
</DATASOURCE>
<LANGINFOS>
<LANGINFO lang="*" label="Detail text"/>
<LANGINFO lang="DE" label="Detailtexte"/>
</LANGINFOS>
</FS_LIST>
Ausgegeben wird die FS_LIST per CMS_FOR:
$CMS_FOR(item, cs_details.sort(x -> x.order_index))$
<div$CMS_VALUE(editorId(target:item))$>
$CMS_IF(!item.cs_headline.isEmpty())$<h4$CMS_VALUE(editorId(target:item, editorName:"cs_headline"))$>$CMS_VALUE(item.cs_headline)$</h4>$CMS_END_IF$
</div>
$CMS_END_FOR$
In den Einstellungen für editorId habe ich schon alle erdenklichen Kombinationen mit view, target, element, template etc. versucht - ohne Erfolg, z. B.:
<div$CMS_VALUE(editorId(view:"cms_news", entity:item, template:"cms_news.t_news_details"))$>
Es lässt sich zwar die Eingabekomponente mit korrektem Inhalt zum Bearbeiten öffnen, aber ein Speichern ist nicht möglich. Beim Bearbeiten des DIV öffnet sich also ein Easy Edit-Fenster mit korrektem Inhalt - dieser wird beim Speichern jedoch nicht übernommen. Beim Bearbeiten des H4 mit InEdit erscheint nach dem Speichern ein Fehler "Speichern des Formulars fehlgeschlagen! Ursache: 500 The call failed on the server; see server log for details". In den Logs finde ich jedoch nichts entsprechendes.
Über die Bearbeitungsfunktion des News-Datensatzes kann ich per ContentCreator auch auf die FS_LIST zugreifen und diese erfolgreich bearbeiten - diesen Mehraufwand würde ich den Redakteuren aber gerne ersparen.
Ich freue mich über jeden Hinweis, wo hier mein Fehler liegt.
Viele Grüße
Sebastian Goeß