Search the FirstSpirit Knowledge Base
Hallo.
Ich bin noch recht neu in FirstSpirit und versuche derzeit mein erstes Projekt umzusetzten.
Leider wird die contentSelect Funktion anhand der Dokumentation und des Demo Projektes noch nicht so recht stimmig.
Spezifisch geht es um die Identifier beim schema parameter und dem query entityType. Die Dokumentation besagt hier das der schema identifier der name des Schemas im Content Store sein soll. Da sonst nirgens von einem Content Store die rede ist ging ich bisher davon aus das der Template Store gemeint ist da dort die Datenbank Schemas gelagert werden. (Dies scheint auch auf den ersten blick zumindest grob mit dem Demo Projekt ueberein zu stimmen)
Der Query entityType soll auf den Namen der Tabelle deuten in der die Daten sind? Ich war an dieser Stelle nicht ganz sicher ob ich es richtig verstanden habe oder ob es auf einen Query in den Schemas zeigen soll (oder auf etwas ganz anderes, das Demo Projekt geht an dieser Stelle ploetzlich von Presse Release Teasern auf Produkte)
Endeffekt: Ich bin mir nicht wirklich sicher was genau die Dokumentation an der Stelle meint und von wo der richtige parameter zu kommen hat. Beim wiederholten ausprobieren aller Moeglichkeiten die mir einfallen wollten habe ich noch nie ein ergebnis bekommen, statt dessen ist das ergebnis immer lehr.
Meine alternative vermutung ist das die daten nicht richtig angelegt sind (sie scheinen nicht veroeffentlicht und ich habe noch keine ahnung wie ich dies aendere). Ueber einen Query im Schema Abteil des Template Store werden die eintraege zumindest gefunden. Mehr konnte ich was diese vermutung angeht jedoch noch nicht testen.
Es waere sehr hilfreich wenn jemand helfen oder zumindest einen freundlichen hinweis in die richtige richtung geben koennte da ich ansonsten mit dem Problem ziemlich fest stecke.
Vielleicht hilft dir Hint: Use the table query wizard to build a query
Leider nicht. Hatte ich mir auch schon angesehen, aber es generiert nur den Query part des ContentSelect, nicht den Schema Parameter. Und der generierte Query Part war identisch mit dem was ich schon hatte. Das laesst zwar (hoffenltich) ausschliessen das dieser Part das Problem ist, aber damit ist fuer mich immernoch nicht erschliessbar was ich entweder am schema parameter oder an einer mir unbekannten stelle aendern muesste damit es funktioniert...
Vielleicht ist ja etwas grundlegend im code selbst falsch?
Hier ist was ich derzeit im template habe... als Ergebnis wird bestaendig der "It's empty" fallback geliefert.
<CMS_HEADER>
<CMS_FUNCTION name="contentSelect" resultname="news">
<CMS_PARAM name="schema" value="News" />
<QUERY entityType="News">
<NOTNULL attribute="Date"/>
</QUERY>
</CMS_FUNCTION>
</CMS_HEADER>
This is me doing a query <br>
$CMS_IF(!news.isEmpty)$
here be results...
$CMS_FOR(c_news, news)$
$CMS_VALUE(c_news.fs_id)$ = $CMS_VALUE(c_news.cs_headline)$
$CMS_END_FOR$
$CMS_END_IF$
$CMS_IF(news.isEmpty)$
Its empty
$CMS_END_IF$
Der Schema-Name ist der Referenzname des Datenbank-Schemas aus dem Bereich Vorlagen.