bx:record
Das Tag record stellt einen Datensatz einer Containerliste auf einer Seite dar. Es kann entweder ein Datensatz in der Verwaltung gewählt, oder direkt im Tag eine ID angegeben werden.
ein bestimmtes Element anzeigen
<bx:record.{name} pool="{id}" [id="{id}"] [sub="{name}"] [show="{active | inactive | all}"] [list="{all}"] [size="{n}"]>
<bx:recordfield.{feldname}/>
</bx:record.{name}>
| name | Bezeichner |
|---|---|
| pool | ID des betreffenden Containers |
| id | eine ID kann direkt oder über ein Präfix angegeben werden** nicht angegeben:** bestimmter Datensatz kann in der Administration über ein Auswahlfeld gewählt werden angegeben: DS mit dieser ID wird ausgegeben und es erfolgt keine Auswahl in der Administration Falls |
| sub | bestimmer Untercontainer kann als Basis für die Datensätze festgelegt werden (gilt für alte Container) |
| show | Anzeige von aktiven, inaktiven oder allen Datensätzen |
| list | list=all: im Auswahlfeld in der Verwaltung werden auch die inaktiven DS angezeigt |
| size | Größenangabe für das Select-Tag |
Angabe eines Filters zur Auswahleinschränkung in der Verwaltung
<bx:record.Feldname pool="{Container-ID}" name="{Feldname}" type="{Vergleichsart}" value="{Vergleichswert}"> ... </bx:record.Feldname>
(ab V 2.7.) Erweiterung im Tag, vergleichbar mit dem Filter am Tag bei bx:containerfilter und auch die Felder sind so genannt. Dies schränkt die angezeigte Liste in der Verwaltung entsprechend des Filters ein.
| name | Name des zu überprüfenden Feldes (siehe auch " Filter ") |
|---|---|
| type | Art des Vergleiches (siehe auch " Filter ") |
| value | gesuchter Wert (siehe auch " Filter ") statisch : einfach gesuchten Wert angeben (z.B. eine ID) dynamisch : mit Präfix (siehe auch " Präfixe ") |
Beispiel
Beispiel Titel
<bx:record.Beitrag pool="Seitentexte" name="Sprache" type="8" value="system:sprache"> <!-- ID für Sprache ist eine Systemvariable -->
<a href="detail.htm?rid=<bx:recorddata.id/>"><bx:recordfield.Titel/></a>
</bx:record.Beitrag>
Es werden in der Verwaltung nur Beiträge zur Auswahl angezeigt, die die jeweilige Sprache haben. Die ID für die Sprache wird in einer Systemvariablen gespeichert.
Dummy-Element anzeigen
<bx:record.{name} pool="{id}" id="attribute:xx" dummy> Inhalt </bx:record.{name}>
Ist das id-Feld leer, wird ein Dummy-Datensatz angezeigt, d.h., die im Inhalt angebenen Felder sind leer.
Beispiel
Beispiel Titel
<form action="save.act" method="post">
<bx:record.Kontakt pool="11111111111" id="request:kontaktid" dummy>
<bx:if><input type="hidden" name="kontaktid" value="<bx:recorddata.id/>"></bx:if>
<input type="text" name="Name" value="<bx:recordfield.Name/>">
<input type="text" name="Vorname" value="<bx:recordfield.Vorname/>">
<input type="text" name="Email" value="<bx:recordfield.Email/>">
<input type="submit" value="abschicken">
</bx:record.Kontakt >
</form>
Ein Formular muß nur einmal gebaut werden, da auch der Fall eines leeren Formulars damit abgedeckt ist. Allerdings darf dann die recordid als hidden-Field nicht mit übergeben werden (in ifs einschließen).
Mehrfach-Auswahl
<bx:multirecord.{name} pool="{id}" ...> Inhalt </bx:multirecord.{name}>
Dieses Tag funktioniert wie bx:record, es können aber mehrere Datensätze ausgewählt werden.