<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://de.contaowiki.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
		<id>https://de.contaowiki.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Paulpflug</id>
		<title>Contao Community Documentation - Benutzerbeiträge [de]</title>
		<link rel="self" type="application/atom+xml" href="https://de.contaowiki.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Paulpflug"/>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Spezial:Beitr%C3%A4ge/Paulpflug"/>
		<updated>2026-04-30T12:29:23Z</updated>
		<subtitle>Benutzerbeiträge</subtitle>
		<generator>MediaWiki 1.22.6</generator>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_entrie1de.png</id>
		<title>Datei:Mm translatedselect entrie1de.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_entrie1de.png"/>
				<updated>2013-05-16T14:28:19Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: hat eine neue Version von „Datei:Mm translatedselect entrie1de.png“ hochgeladen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_entrie1de.png</id>
		<title>Datei:Mm translatedselect entrie1de.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_entrie1de.png"/>
				<updated>2013-05-16T14:26:33Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: hat eine neue Version von „Datei:Mm translatedselect entrie1de.png“ hochgeladen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/MetaModels_Backend:_Attribute</id>
		<title>MetaModels Backend: Attribute</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/MetaModels_Backend:_Attribute"/>
				<updated>2013-05-16T14:12:36Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: /* Übersetzte Auswahl */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
[[Category:MetaModels]]&lt;br /&gt;
&lt;br /&gt;
=Allgemeines zu den Attributen=&lt;br /&gt;
# [[MetaModels_Backend:_Attribute| MetaModels Attribute]]&lt;br /&gt;
# [[MetaModels_Backend:_Ausgabevorgaben| MetaModels Ausgabevorgaben]]&lt;br /&gt;
# [[MetaModels_Backend:_Paletteneinstellungen| MetaModels Paletteneinstellungen]]&lt;br /&gt;
# [[MetaModels_Backend:_Filter| MetaModels Filter]]&lt;br /&gt;
# [[MetaModels_Backend:_Ansichtseinstellungen| MetaModels Ansichtseinstellungen]]&lt;br /&gt;
&lt;br /&gt;
==Was sind eigentlich Attribute?==&lt;br /&gt;
[[File:icons_attribute.png|left|32px]]&lt;br /&gt;
Grob gesagt: die Datenbank-Objekte (aka Datensatz), die in den MetaModels erfasst werden, setzen sich aus den verschiedensten Attributen (aka Eigenschaften oder Feldern) zusammen.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Einstieg=&lt;br /&gt;
[[File:mm_backend_attribute_liste.png|thumb|365px]]&lt;br /&gt;
Über '''New attribute''' erfasst man die gewünschten Attribute. Name und Beschreibung eines Objektes, die Fotos, die das Objekt illustrieren, eine Checkbox, mit der ein Eintrag veröffentlicht werden kann - all das wird in Attributen abgelegt. Jedes Attribut entspricht also einer Spalte in der Datenbank-Tabelle.&lt;br /&gt;
Aus den verschiedenen Attributen stellt man die Eingabemaske für die einzelnen Datensätze zusammen. Für jeden Attributtyp gibt es diverse Einstellungen, die im Folgenden beim jeweiligen Attribut erläutert werden.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Attribut definieren==&lt;br /&gt;
[[File:mm_attribut_settings_eingabemaske.png|thumb|365px]]&lt;br /&gt;
Mit einem Klick auf das Icon Bearbeiten fängt man an. Zuerst wird der Attributtyp ausgewählt. Für '''jedes''' Attribut müssen dann '''Basis-Attributkonfigurationen''' festgelegt werden:&lt;br /&gt;
&lt;br /&gt;
* '''Attribute Type''': Typ (gesamte Liste siehe weiter unten)&lt;br /&gt;
* '''Column Name''' (Name der Tabellenspalte in der Datenbank)&lt;br /&gt;
* '''Name''' (Name der Feldüberschrift bei der Erfassung des Datensatzes)&lt;br /&gt;
* '''Description''' (Beschreibung unterhalb des Feldes bei der Erfassung des Datensatzes)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bei allen Attributen findet man unter den '''erweiterten Einstellungen''' (Advanced settings) noch die Checkbox &amp;quot;'''Unique values'''&amp;quot; - wird diese angehakt, kann für das betreffende Attribut jeder Wert nur einmal verwendet werden.&lt;br /&gt;
&lt;br /&gt;
Den Einträgen, die man unter '''Name''' und '''Beschreibung''' eingibt, begegnet man später in der Eingabemaske wieder (siehe rote Markierung im Screenshot).&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Alias=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_attribut_alias.png|thumb|365px]]&lt;br /&gt;
&lt;br /&gt;
Das Attribut '''Alias''' erzeugt ein einzeiliges Eingabefeld. Dieses Attribut sollte erst dann erzeugt werden, wenn mindestens ein Textfeld (vorzugsweise ein Titel-Feld) vorhanden ist, aus dem sich das Alias automatisch bilden kann.&lt;br /&gt;
&lt;br /&gt;
'''Advanced Settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
*'''Force alias regenerating''': Anhaken, wenn sich das Alias automatisch anpassen soll, wenn immer der Wert des zugewiesenen Feldes geändert wird (ist etwas buggy, Stand:März 2013)&lt;br /&gt;
*'''Alias fields''': Attribut, aus dem das Alias generiert wird&lt;br /&gt;
 &amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Auswahl=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_attribut_select.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Auswahl''' erzeugt ein HTML-Select.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Advanced Settings'''&lt;br /&gt;
* '''select_table''': Hier erscheinen alle in der Contao-Installation verfügbaren Tabellen (siehe Hinweis weiter unten)&lt;br /&gt;
* '''select_id''': Vorzugsweise '''id''' auswählen. Standardmässig führt jede Contao-Tabelle eine ID mit&lt;br /&gt;
* '''select_column''': Namen der Spalte auswählen, der die Werte des Selects zur Verfügung stellt&lt;br /&gt;
* '''select_alias''': Vorzugsweise das '''alias''' auswählen&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&lt;br /&gt;
Hinweis: Um das Attribut '''Auswahl''' anlegen zu können, muss man zuerst eine neue Tabelle (sprich ein neues MetaModel) erstellen, in der die Select-Werte angelegt werden.&lt;br /&gt;
Die genaue Vorgehensweise ist [[MetaModels_Beispiel_4|hier]] beschrieben. Erst dann kann man unter '''select_table''' die betreffende Tabelle auswählen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Checkbox=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_attribut_checkbox.png|thumb|365px]]&lt;br /&gt;
&lt;br /&gt;
Das Attribut '''Checkbox''' erzeugt eine einfache HTML Checkbox.&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
*'''Check Published''': Erzeugt im Backend die Option, einen Datensatz freizugeben (Icon 'Auge')&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Datei=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_attribut_datei.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Datei''' erzeugt ein Wurzelverzeichnis, aus dem sich einzelne Dateien oder Order anwählen lassen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Dezimal=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_attribut_dezimal.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Dezimal''' erzeugt ein einzeiliges Eingabefeld und nimmt eine Feldprüfung vor&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=GeoProtection=&lt;br /&gt;
&lt;br /&gt;
Funktionen und Konfigurationseinstellungen&amp;lt;br&amp;gt;&lt;br /&gt;
Benötigt die Extension [https://contao.org/de/extension-list/view/geoprotection.de.html geoprotection], ansonsten wird eine [https://community.contao.org/de/showthread.php?38172-Erste-Gehversuche&amp;amp;amp;p=248078&amp;amp;amp;viewfull=1#post248078 Fehlermeldung] rausgeworfen.&lt;br /&gt;
&lt;br /&gt;
=Longtext=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_attribut_longtext.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Langtext''' erzeugt eine Textarea.&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&lt;br /&gt;
Es stehen 3 Richtext-Editoren zur Verfügung: tinyFlash, tinyMCE und tinyNews.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:mm_paletteneinstellungen_longtext.png|thumb|365px]]&lt;br /&gt;
Die Richtext-Editoren können über die Paletteneinstellungen aktiviert werden.&lt;br /&gt;
* Paletteneinstellungen&lt;br /&gt;
* Paletteneinstellungen bearbeiten (also auf das Palettenicon ganz rechts klicken)&lt;br /&gt;
* Formular auswählen&lt;br /&gt;
* Bleistiftsymbol beim Attribut &amp;quot;Longtext&amp;quot; anklicken&lt;br /&gt;
* unter '''presentation_legend''' gibt es einen Punkt '''Enable richtext editor on this'''&lt;br /&gt;
* hier kann der Richtext-Editor ausgewählt werden&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Numerisch=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_attribut_numerisch.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Numerisch''' erzeugt ein einzeiliges Eingabefeld und nimmt eine Feldprüfung vor&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Sprachcode=&lt;br /&gt;
[[File:mm_attribut_sprachcode.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Sparchcode''' erzeugt ein HTML-Select. Als Optionen stehen die angewählten Sprachen (langcodes) zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tags=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_attribut_tags.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Tags''' erzeugt Checkboxen mit Mehrfachauswahl.&lt;br /&gt;
&lt;br /&gt;
'''Advanced Settings'''&lt;br /&gt;
* '''Datenbanktabelle''': Hier erscheinen alle in der Contao-Installation verfügbaren Tabellen (siehe Hinweis weiter unten)&lt;br /&gt;
* '''Spaltenname''': Namen der Spalte auswählen, die die Werte der Tags zur Verfügung stellt&lt;br /&gt;
* '''Tag ID''': Vorzugsweise '''id''' auswählen. Standardmässig führt jede Contao-Tabelle eine ID mit&lt;br /&gt;
* '''Tag Alias''': Namen der Spalte auswählen, die die Werte der Tags zur Verfügung stellt&lt;br /&gt;
* '''Tag Sortierung''': Namen der Spalte auswählen, die die Werte der Tags zur Verfügung stellt&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&lt;br /&gt;
Hinweis: Um das Attribut '''Tags''' anlegen zu können, muss man zuerst eine neue Tabelle (sprich ein neues MetaModel) erstellen, in der die verschiedenen Tags angelegt werden. Die genaue Vorgehensweise ist - am Beispiel des Attributes '''Auswahl''' - [[MetaModels_Beispiel_4|hier]] beschrieben. Erst dann kann man unter '''Datenbanktabelle''' die betreffende Tabelle auswählen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Text=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_attribut_text.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Text''' erzeugt ein einzeiliges Eingabefeld.&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Timestamp (Datum)=&lt;br /&gt;
[[File:mm_attribut_timestamp.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Timestamp''' erzeugt ein einzeiliges Eingabefeld mit Datumsprüfung.&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&lt;br /&gt;
'''Datum und Zeit &amp;gt; Schema'''&lt;br /&gt;
*'''Datum''' erzeugt z.B. 2013-03-06&lt;br /&gt;
*'''Datum und Zeit''' erzeugt z.B. 2013-03-06 08:15&lt;br /&gt;
Das Datum wird so konfiguriert wie es in den Backend-Einstellungen von Contao definiert ist. Im Frontend richtet es sich nach den allgemeinen Einstellungen oder je nach Konfiguration nach den Einstellungen in der Seitenstruktur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=URL=&lt;br /&gt;
[[File:mm_attribut_url.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''URL''' erzeugt zwei einzeilige Eingabefelder. Eines für den Linktext und eines für die URL. &lt;br /&gt;
Mit dabei ist auch noch ein Icon, über das sich eine Seite aus der Seitenstruktur auswählen lässt.&lt;br /&gt;
&lt;br /&gt;
Externe Links müssen mit einem http:// (oder https://) versehen sein, anderfalls interpretiert MetaModels die URL als relativen Link.&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Übersetztes Alias=&lt;br /&gt;
[[File:mm_attribut_translated_alias.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''translatedalias''' erzeugt ein einzeiliges Eingabefeld.&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Übersetzte Datei=&lt;br /&gt;
[[File:mm_attribut_translated_datei.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Übersetzte Datei''' erzeugt ein einzeiliges Eingabefeld.&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Übersetzter Longtext=&lt;br /&gt;
[[File:mm_attribut_translated_longtext.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Übersetzter Longtext''' erzeugt eine mehrzeilige Textarea.&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Übersetzte Auswahl=&lt;br /&gt;
[[File:mm_attribut_translated_auswahl.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Übersetzte Auswahl''' erzeugt ein HTML Select.&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ein Beispiel zur Verwendung ist hier zu finden:&lt;br /&gt;
[[MetaModels_Beispiel:_Übersetzter_select|Weiteres Beispiel: Übersetzter select]] - Mehrsprachiges Select-Attribut einrichten&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Übersetzte Tags=&lt;br /&gt;
[[File:mm_attribut_translated_tags.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Übersetzte Tags''' erzeugt ein....&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Übersetzter Text=&lt;br /&gt;
[[File:mm_attribut_translated_text.png|thumb|365px]]&lt;br /&gt;
Das Attribut '''Übersetzter Text''' erzeugt ein einzeiliges Eingabefeld.&lt;br /&gt;
&lt;br /&gt;
'''Advanced settings'''&lt;br /&gt;
*'''Unique values''': Anhaken, wenn dieser Wert nur einmal vorkommen soll&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/MetaModels_Beispiel_4</id>
		<title>MetaModels Beispiel 4</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/MetaModels_Beispiel_4"/>
				<updated>2013-05-16T14:09:05Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: /* Vorgehensschritte */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:MetaModels]]&lt;br /&gt;
&lt;br /&gt;
=Aufgabenstellung: Weiteres MetaModel einrichten=&lt;br /&gt;
Wer mit Catalog arbeitet, ist es gewohnt, Selects einzusetzen, um Datensätze zu kategorisieren. In unserem Fall wäre es z.B. sinnvoll, unsere Musikstücke bestimmten Stilrichtungen zuzuordnen. &amp;lt;br&amp;gt;&lt;br /&gt;
Bei Catalog wird hierfür die Erweiterung [https://contao.org/de/extension-list/view/taxonomy.10089.de.html Taxonomy] eingesetzt, um Hierarchien von Taxonomie-Bedingungen (oder besser bekannt als Tags) zu erstellen, die dann über ein Select bei der Datensatz-Erfassung abgerufen werden können. Im Wesentlichen wird über Taxonomy eine separate Tabelle mit den später abzurufenden Kategorien erfasst. &amp;lt;br&amp;gt;&lt;br /&gt;
Mit MetaModels entfällt der Rückgriff auf Taxonomy. Mit MetaModels kann man eigene Tabellen erfassen, die die Einträge der HTML-Selects enthalten.&lt;br /&gt;
&lt;br /&gt;
===Vorgehensschritte===&lt;br /&gt;
# [[MetaModels|Start: Installation]] - Download und Installation von MetaModels&lt;br /&gt;
# [[MetaModels_Beispiel_1|Beispiel 1: Backend einrichten]] - Eingeben der Sammlung&lt;br /&gt;
# [[MetaModels_Beispiel_2|Beispiel 2: Frontend einrichten]] - Die Inhalte im Frontend anzeigen (Liste und Detail)&lt;br /&gt;
# [[MetaModels_Beispiel_3|Beispiel 3: Weitere Filter einrichten]] – Inhalte auf Published setzen, einfache Select-Filter&lt;br /&gt;
# [[MetaModels_Beispiel_4|Beispiel 4: Weiteres MetaModels einrichten]] - komplexe Select-Filter einsetzen&lt;br /&gt;
# [[MetaModels_Beispiel:_Übersetzter_select|Weiteres Beispiel: Übersetzter select]] - Mehrsprachiges Select-Attribut einrichten&lt;br /&gt;
&lt;br /&gt;
=Neues MetaModel erstellen=&lt;br /&gt;
&lt;br /&gt;
==Leeres MetaModel==&lt;br /&gt;
[[File:mm_neues_metamodel.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Wir beginnen damit, dass wir unter MetaModels ein neues MetaModel anlegen:&lt;br /&gt;
* Klick auf '''Neues MetaModel'''&lt;br /&gt;
* Wir geben dem neuen MetaModel den Namen '''Musicbox - Stilrichtungen''' und den Tabellennamen '''mm_select_style'''&lt;br /&gt;
* Des weiteren aktivieren wir die '''Übersetzung''' setzen als Sprache '''Deutsch''' ein und aktivieren das '''Fallback'''&lt;br /&gt;
* Speichern und schliessen&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:mm_neues_metamodel2.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
* Nun steht uns ein neues, leeres MetaModel (mit null Datensätzen) zur Verfügung, das wir mit den Begriffen der benötigten Stilrichtungen füllen können.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==MM-Funktion: Attribute==&lt;br /&gt;
&lt;br /&gt;
[[File:icons_attribute.png|left|32px]]&lt;br /&gt;
&lt;br /&gt;
Wir erfassen zuerst die benötigen Attribute für die Eingabe.&lt;br /&gt;
[[File:mm_neues_metamodel_attribute.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Hierzu geben wir folgende Felder ein:&lt;br /&gt;
* '''Stilrichtung'''&lt;br /&gt;
** Attribute Type= Text&lt;br /&gt;
** Column name= style&lt;br /&gt;
** Name (deutsch)= Stilrichtung&lt;br /&gt;
** Description (deutsch)= Pop, Rock, New Wave, Jazz, etc.&lt;br /&gt;
&lt;br /&gt;
* '''Alias'''&lt;br /&gt;
** Attribute Type= Alias&lt;br /&gt;
** Column name= alias&lt;br /&gt;
** Name (deutsch)= Alias&lt;br /&gt;
** Description (deutsch)= Wird für URL benötigt.&lt;br /&gt;
** Unique values= aktiviert&lt;br /&gt;
** Alias fields= Titel&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==MM Funktion: Ausgabevorgaben==&lt;br /&gt;
[[File:icons_ausgabevorgaben.png|left|32px]]&lt;br /&gt;
Es wird eine neue Ausgabevorgabe benötigt.&lt;br /&gt;
&lt;br /&gt;
[[File:mm_neues_metamodel_ausgabevorgaben.png|thumb|400px]]&lt;br /&gt;
* Auf '''Neu''' klicken&lt;br /&gt;
* Die neue Ausgabevorgabe mit '''BE Listenansicht''' benennen&lt;br /&gt;
* speichern und schließen&lt;br /&gt;
* über die Attributeinstellungen alle Attribute hinzufügen&lt;br /&gt;
* Sichtbarkeit(Auge) herstellen&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==MM Funktion: Paletteneinstellung==&lt;br /&gt;
[[File:icons_paletteneinstellungen.png|left|32px]]&lt;br /&gt;
Es wird eine neue Paletteneinstellung benötigt.&lt;br /&gt;
&lt;br /&gt;
[[File:mm_neues_metamodel_paletteneinstellungen.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
* Auf '''Neu''' klicken&lt;br /&gt;
* Die neue Paletteneinstellung mit '''BE Erfassung''' benennen&lt;br /&gt;
* Alle Attribute hinzufügen&lt;br /&gt;
* Speichern und schliessen&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==MM Funktion: Filter==&lt;br /&gt;
[[File:icons_filter.png|left|32px]]&lt;br /&gt;
Es wird kein Filter benötigt.&lt;br /&gt;
&lt;br /&gt;
==MM Funktion: Ansichtseinstellungen==&lt;br /&gt;
[[File:icons_ansichtseinstellungen.png|left|32px]]&lt;br /&gt;
Es werden wie gewohnt die Zugriffsberechtigung zugewiesen, damit über die Backend-Navigation auf die Tabelle zugegriffen werden kann.&lt;br /&gt;
&lt;br /&gt;
[[File:mm_neues_metamodel_ansichtseinstellungen.png|thumb|400px]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Neues MetaModel 'MyMusik - Stilrichtungen' steht zum Abfüllen bereit=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_neues_metamodel_navi.png|left|600px]]&lt;br /&gt;
&lt;br /&gt;
[[File:mm_neues_metamodel_navi2.png|left|600px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==BE Liste==&lt;br /&gt;
[[File:mm_neues_metamodel_BE_liste.png|thumb|400px]]&lt;br /&gt;
* Über '''Neuer Datensatz''' wird die Liste befüllt&lt;br /&gt;
* Für unserem Fall werden nun die späteren Kategorien erfasst: Pop/Rock, Italo-Rock, New Wave, Fat Beat, Cantautore, Soul/Blues und Jazz&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==BE Formular==&lt;br /&gt;
[[File:mm_neues_metamodel_BE_formular.png|thumb|400px]]&lt;br /&gt;
* Das BE Formular sieht ziemlich simpel aus&lt;br /&gt;
* Ein separates Feld &amp;quot;ID&amp;quot; braucht nicht erfasst zu werden, denn dieses wird im Hintergrund automatisch generiert&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Auswahlfeld bei 'Musicbox' hinzufügen=&lt;br /&gt;
Wir klicken unser altes MetaModel '''Musicbox''' an und wählen dort die MM-Funktion '''Attribute''' an.&lt;br /&gt;
==Neues Attribut 'Stilrichtung'==&lt;br /&gt;
[[File:mm_neues_atribut.png|thumb|400px]]&lt;br /&gt;
* Das neue Attribut ist vom Typ '''Auswahl'''&lt;br /&gt;
* Column name: style&lt;br /&gt;
* Name: Stilrichtung&lt;br /&gt;
* Description:... wie es euch gefällt&lt;br /&gt;
&lt;br /&gt;
Nun kommt der eigentlich wichtige Teil: Man stellt eine Verbindung zum neu geschaffenen MetaModel her&lt;br /&gt;
&lt;br /&gt;
* select_table: Hier erscheinen alle in der Contao-Installation verfügbaren Tabellen. Ausgewählt wird die neue Tabelle '''mm_select_style'''&lt;br /&gt;
* select_id: '''id''' auswählen. Standardmässig führt jede Contao-Tabelle eine ID mit&lt;br /&gt;
* select_column: Den Namen der Spalte '''style''' auswählen&lt;br /&gt;
* select_alias: '''alias''' auswählen&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:mm_neues_atribut_musicbox.png|thumb|400px]]&lt;br /&gt;
Ab sofort steht nun in der BE Erfassung von '''MyMusic''' ein neues Feld '''Stilrichtung''' mit einem Select zur Verfügung. Das Select enthält nun alle Werte, die unter '''MyMusic - Stilrichtungen''' erfasst wurden.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Zusätzlichen Select-Filter im Frontend definieren=&lt;br /&gt;
&lt;br /&gt;
==Filter bei MyMusic anpassen==&lt;br /&gt;
[[File:mm_neues_attribut_filter.png|thumb|400px]]&lt;br /&gt;
* Der bereits exisitierende Name des Filters '''FE Filter Published''' wird kurz zu &amp;quot;FE Filter Published/Selects&amp;quot; angepasst&lt;br /&gt;
* Der Filter '''FE Filter Published''' wird um weitere Einstellungen ergänzt, nämlich...&lt;br /&gt;
** eine Einfache Auswahl für das Attribut (Stilrichtung)&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:mm_neues_attribut_filter2.png|thumb|400px]]&lt;br /&gt;
* Nebenan die Anpassung der Einstellung '''Einfache Auswahl''' für das Attribut '''Stilrichtung'''&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Frontend-Modul aktualisieren==&lt;br /&gt;
&lt;br /&gt;
[[File:mm_neues_attribut_FE-Modul.png|thumb|400px]]&lt;br /&gt;
Das bereits existierende FE-Modul '''MM - MyMusik Filter''' muss noch angepasst werden:&lt;br /&gt;
* Anzuwendende Filtereinstellungen: Hier hat sich der Name des Filters bereits selbst aktualisiert&lt;br /&gt;
* Filterparameter: den neu hinzugekommene Parameter '''Stilrichtung''' anklicken&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Frontend Ansicht=&lt;br /&gt;
Im Frontend wird ein weiteres Select angezeigt, aus dem zusätzlich auch die '''Stilrichtungen''' angewählt werden können. &lt;br /&gt;
Die darunter liegende Liste wird entsprechend den oben ausgewählten Kriterien eingegrenzt.&lt;br /&gt;
&lt;br /&gt;
[[Datei:mm_frontend_beispiel_2_selects.jpg|link=|700px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[MetaModels_Beispiel_3|Zurück zum Beispiel 3]] |&lt;br /&gt;
[[MetaModels_Beispielprojekt|Zurück zur Beispiel-Übersicht]]&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/MetaModels_Beispiel_3</id>
		<title>MetaModels Beispiel 3</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/MetaModels_Beispiel_3"/>
				<updated>2013-05-16T14:08:50Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: /* Vorgehensschritte */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:MetaModels]]&lt;br /&gt;
&lt;br /&gt;
=Aufgabenstellung: Weitere Filter einrichten=&lt;br /&gt;
Wir bauen einen Mechanismus ein, mit dem wir entscheiden können, welcher der im MetaModel '''Musikbox''' erfassten Datensätze im Frontend erscheinen soll und welcher nicht. Mit dem speziellen Attribut &amp;quot;Published State&amp;quot; lässt sich so was einrichten und über einen Filter im Frontend steuern.&lt;br /&gt;
Darüber hinaus möchten wir die Listenansicht im Frontend etwas interaktiver gestalten, indem wir einen Filter als HTML-Select im Frontend zur Verfügung stellen, der die Liste z.B. nach Länder ausfiltert.&lt;br /&gt;
&lt;br /&gt;
===Vorgehensschritte===&lt;br /&gt;
# [[MetaModels|Start: Installation]] - Download und Installation von MetaModels&lt;br /&gt;
# [[MetaModels_Beispiel_1|Beispiel 1: Backend einrichten]] - Eingeben der Sammlung&lt;br /&gt;
# [[MetaModels_Beispiel_2|Beispiel 2: Frontend einrichten]] - Die Inhalte im Frontend anzeigen (Liste und Detail)&lt;br /&gt;
# [[MetaModels_Beispiel_3|Beispiel 3: Weitere Filter einrichten]] – Inhalte auf Published setzen, einfache Select-Filter&lt;br /&gt;
# [[MetaModels_Beispiel_4|Beispiel 4: Weiteres MetaModels einrichten]] - komplexe Select-Filter einsetzen&lt;br /&gt;
# [[MetaModels_Beispiel:_Übersetzter_select|Weiteres Beispiel: Übersetzter select]] - Mehrsprachiges Select-Attribut einrichten&lt;br /&gt;
&lt;br /&gt;
=Published Filter im Backend einbauen=&lt;br /&gt;
&lt;br /&gt;
==Start==&lt;br /&gt;
[[File:mm_backend_anpassen0.png|thumb|400px]]&lt;br /&gt;
Die Übersichtsliste in unserer Musiksammlung '''MyMusic''' entspricht bisher in etwa dem nebenstehenden Screenshot.&lt;br /&gt;
&lt;br /&gt;
Hier möchten wir das Icon &amp;quot;Auge&amp;quot; (=&amp;gt; Eintrag veröffentlichen) einfügen, dass wir von anderen Contao-Backend Funktionen kennen.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==MM-Funktion: Attribute anpassen==&lt;br /&gt;
&lt;br /&gt;
[[File:icons_attribute.png|left|32px]]&lt;br /&gt;
&lt;br /&gt;
Hier erfassen wir das neue Attribut (s. auch [[MetaModels_Backend:_Attribute|Doku zum Dialog]])&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_anpassen1.png|thumb|400px]]&lt;br /&gt;
* Wähle '''New attribute'''&lt;br /&gt;
* Wähle als ''Attribute Typ'' '''Checkbox''' aus gib als ''Column name'' z.B. '''published''' ein&lt;br /&gt;
* Wichtig: '''check_publish''' muss angeklickt sein&lt;br /&gt;
* In der Attributsübersicht erscheint jetzt das neu angelegte Feld '''Veröffentlicht'''&lt;br /&gt;
&lt;br /&gt;
Nun kann man in den entsprechenden anderen MM-Backend-Funktionen, die weiteren Anpassung vornehmen.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==MM-Funktion: Ausgabevorgaben anpassen==&lt;br /&gt;
[[File:icons_ausgabevorgaben.png|left|32px]]&lt;br /&gt;
Wir passen die Listendarstellung für das Backend an (s. [[MetaModels_Backend:_Ausgabevorgaben|Doku zum Dialog]])&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_anpassen2.png|thumb|400px]]&lt;br /&gt;
* Wir wählen die Attributseinstellungen von &amp;quot;BE Listenansicht&amp;quot;&lt;br /&gt;
* Wähle &amp;quot;Add all&amp;quot; aus&lt;br /&gt;
* Es gibt einen automatischen Check welche Attribute bereits in die Rendersettings geladen wurden und welche nicht. Das neue Attribut &amp;quot;Veröffendlicht&amp;quot; wird hinzugefügt&lt;br /&gt;
* Es wird am Ende der Attributsliste hinzugefügt&lt;br /&gt;
&lt;br /&gt;
Damit sind die eigentlichen Anpassungen für das Backend schon abgeschlossen.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==MM-Funktion: Paletteneinstellung anpassen==&lt;br /&gt;
[[File:icons_paletteneinstellungen.png|left|32px]]&lt;br /&gt;
Wir passen die Paletteneinstellung für das Backend an (s. [[MetaModels_Backend:_Paletteneinstellungen|Doku zum Dialog]])&lt;br /&gt;
&lt;br /&gt;
Damit das gerade hinzugefügte Attribut auch im Backend wirksam wird, muss noch die Paletteneinstellung angepasst werden.&lt;br /&gt;
* Wir wählen für die Palette '''BE Erfassung''' das Icon ''Die Einstellungen der Palette ID xx bearbeiten''&lt;br /&gt;
* Dann ''Alle hinzufügen'' und zweimal bestätigen&lt;br /&gt;
&lt;br /&gt;
==Backendliste &amp;quot;MyMusik&amp;quot; nochmals prüfen==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_anpassen3.png|thumb|400px]]&lt;br /&gt;
Wenn wir jetzt unsere Übersichtsliste in unserer Musiksammlung &amp;quot;MyMusic&amp;quot; nochmals ansehen, entdecken wir das Icon &amp;quot;Auge&amp;quot;.&lt;br /&gt;
&amp;lt;br&amp;gt;Nun können wir im Backend steuern, ob ein Musikstück im Frontend angezeigt werden soll oder nicht.&lt;br /&gt;
&lt;br /&gt;
Damit das geschieht, müssen wir noch einen Filter erstellen, der den jeweiligen Frontend-Ansichten sagt, dass nur markierte Musikstücke veröffentlicht werden sollen.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Published Filter im Frontend einbauen=&lt;br /&gt;
Schaut man sich jetzt wiederholt die Frontend-Liste der Musicbox an während man im BE mit dem ''veröffentlicht-Auge'' herumspielt, so stellt man keine Veränderung fest.&amp;lt;br&amp;gt;Wir müssen daher in diversen MM-Backend-Funktionen Veränderungen vornehmen&lt;br /&gt;
&lt;br /&gt;
==MM-Funktion: [[MetaModels_Backend:_Filter|Filter definieren]]==&lt;br /&gt;
Wir erstellen einen neuen Filter: &amp;quot;FE Filter published&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_filter_anpassen1.png|thumb|400px]]&lt;br /&gt;
* Wir wählen &amp;quot;neu&amp;quot;, bestätigen mit weiter&lt;br /&gt;
* Wir wählen den Typ &amp;quot;Published state&amp;quot;, wählen hierzu das vorhin erfasste Attribut &amp;quot; Veröffentlicht [checkbox]&amp;quot; und aktivieren diesen neuen Filter &amp;quot;FE Filter published&lt;br /&gt;
* ... und kehren zurück zur Filter-Übersichtsliste&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Frontend-Modul anpassen==&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_filter_anpassen2.png|thumb|400px]]&lt;br /&gt;
* Wir gehen über die Themes zu unseren Frontend-Modulen&lt;br /&gt;
* Wir wählen hier das Modul, das für unsere Frontend-Ansicht zuständig ist. In unserem Fall das FE-Modul &amp;quot;MM - MyMusik Liste&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Dort nehmen wir an folgende Änderungen vor:&lt;br /&gt;
&lt;br /&gt;
* Bei &amp;quot;Anzuwendende Filtereinstellungen&amp;quot; wählen wir den neu erstellen Filter &amp;quot;FE Filter Published&amp;quot; an&lt;br /&gt;
&lt;br /&gt;
Ab sofort werden im Frontend nur noch die Datensätze angezeigt, die wir in unserer Backend-Liste &amp;quot;MyMusik&amp;quot; mit dem Icon &amp;quot;Auge&amp;quot; markiert haben.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Select Filter im Frontend einbauen=&lt;br /&gt;
Hier müssen wir in diversen MM-Backend-Funktionen diverse Veränderungen vornehmen&lt;br /&gt;
&lt;br /&gt;
==MM-Funktion: Filter definieren==&lt;br /&gt;
Wir nehmen den neuen Filter, ergänzen diesen und geben ihm einen neuen Namen &amp;quot;FE Filter published/Country&amp;quot;. Dieser angepasste Filter muss zwei Bedingungen erfüllen:&lt;br /&gt;
* Er soll wie bisher nur die publizierten Musikstücke anzeigen&lt;br /&gt;
* Er soll nur die Länder anzeigen, die wir über ein Select anwählen, das über der FE Liste angezeigt wird&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_filter_anpassen3.png|thumb|400px]]&lt;br /&gt;
* Wir wählen die Filtereinstellungen des &amp;quot;Filters FE Filter published&amp;quot;&lt;br /&gt;
* Wir wählen &amp;quot;neu&amp;quot; und setzen die neue Einstellung unterhalb der Einstellung &amp;quot;Published State&amp;quot; ein&lt;br /&gt;
* Wir nehmen den Typ &amp;quot;Einfache Auswahl&amp;quot;, weisen das Attribut &amp;quot;Land [text]&amp;quot; zu und aktivieren diesen&lt;br /&gt;
* Optional wählen wir noch die Option &amp;quot;Leerer Wert&amp;quot; an. Dies bewirkt, dass im späteren Select überhalb unserer Länderauswahl ein leerer Eintrag generiert wird&lt;br /&gt;
* Wir &amp;quot;Speichern und schliessen&amp;quot; den Dialog&lt;br /&gt;
&lt;br /&gt;
Nun erscheint uns neu der Filter &amp;quot;FE Filter published&amp;quot; als eine Kombination von 2 Filtereinstellungen. Man kann sich nun leicht vorstellen, wie komplex man sich diesen Filter bauen kann, wenn man will.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Neues Frontend-Modul erstellen==&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_filter_anpassen4.png|thumb|400px]]&lt;br /&gt;
* Wir gehen über die Themes zu unseren Frontend-Modulen&lt;br /&gt;
* Wir erstellen hier ein neues Frontend-Modul&lt;br /&gt;
* Wir wählen hierzu den Modultyp &amp;quot;MetaModels Filter&amp;quot; und geben ihm den Namen &amp;quot;MM - MyMusik Filter&amp;quot;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Bestehendes Frontend-Modul anpassen==&lt;br /&gt;
[[File:mm_backend_filter_anpassen5.png|thumb|400px]]&lt;br /&gt;
* Wir gehen über die Themes zu unseren Frontend-Modulen&lt;br /&gt;
* Wir nehmen das &amp;amp;nbsp;Frontend-Modul &amp;quot;MM - MyMusik Liste&amp;quot;&lt;br /&gt;
* Wir sortieren nach &amp;quot;Land&amp;quot; und &amp;quot;Aufsteigend&amp;quot;&lt;br /&gt;
* Neu ist nun, dass wir hier unter &amp;quot;anzuwendende Filtereinstellungen&amp;quot; den überarbeiteten Filter &amp;quot;FE Filter published&amp;quot; nehmen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Bestehenden Artikel anpassen==&lt;br /&gt;
[[File:mm_backend_filter_anpassen6.png|thumb|400px]]&lt;br /&gt;
* Wir gehen nun zu unserem Artikel, wo wir einst unser Frontend-Modul &amp;quot;MM - MyMusic Liste&amp;quot; verbaut haben&lt;br /&gt;
* Darüber erstellen wir neu ein weiteres Inhaltselement, ein weiteres Frontend-Modul. Diesmal das neu erstellte FE-Modul &amp;quot;MM - MyMusic Filter&amp;quot;&lt;br /&gt;
* to be continued&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Frontend Ansicht=&lt;br /&gt;
Die FE-Liste erscheint nun neu mit einem HTML-Select. Über die Auswahl lässt sich nun die darunterliegende Liste länderspezifisch verkürzen.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:mm_frontend_beispiel_filter.png|link=|900px]]&lt;br /&gt;
&lt;br /&gt;
[[MetaModels_Beispiel_2|Zurück zur Beispiel 2]] | [[MetaModels_Beispiel_4|Weiter Beispiel 4: Weiter MetaModels hinzufügen]]&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/MetaModels_Beispiel_2</id>
		<title>MetaModels Beispiel 2</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/MetaModels_Beispiel_2"/>
				<updated>2013-05-16T14:08:36Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: /* Vorgehensschritte */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:MetaModels]]&lt;br /&gt;
&lt;br /&gt;
=Aufgabenstellung: Frontend einrichten=&lt;br /&gt;
&lt;br /&gt;
Wir haben im Backend bereits ein paar Daten (Musikstücke) erfasst und möchten diese nun im Frontend anzeigen lassen. Hierfür benötigen wir eine Übersichtseite (Liste) und eine Detailsansicht. Plus noch eine minimale Navigation, um zwischen Liste und Detailansicht hin- und herklicken zu können.&lt;br /&gt;
Hierbei werden wir auch die Filtertechnik von MetaModels einsetzen.&lt;br /&gt;
&lt;br /&gt;
===Vorgehensschritte===&lt;br /&gt;
# [[MetaModels|Start: Installation]] - Download und Installation von MetaModels&lt;br /&gt;
# [[MetaModels_Beispiel_1|Beispiel 1: Backend einrichten]] - Eingeben der Sammlung&lt;br /&gt;
# [[MetaModels_Beispiel_2|Beispiel 2: Frontend einrichten]] - Die Inhalte im Frontend anzeigen (Liste und Detail)&lt;br /&gt;
# [[MetaModels_Beispiel_3|Beispiel 3: Weitere Filter einrichten]] – Inhalte auf Published setzen, einfache Select-Filter&lt;br /&gt;
# [[MetaModels_Beispiel_4|Beispiel 4: Weiteres MetaModels einrichten]] - komplexe Select-Filter einsetzen&lt;br /&gt;
# [[MetaModels_Beispiel:_Übersetzter_select|Weiteres Beispiel: Übersetzter select]] - Mehrsprachiges Select-Attribut einrichten&lt;br /&gt;
&lt;br /&gt;
=Seiterstruktur anpassen=&lt;br /&gt;
== In der Seitenstruktur zwei leere Seiten einrichten==&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_seitenstruktur_einrichten.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Zuerst richten wir in der Seitenstruktur zwei neue (leere) Seiten ein.&lt;br /&gt;
&lt;br /&gt;
* '''Musicbox''' (diese Seite wird die Listenansicht aufnehmen)&lt;br /&gt;
* '''Music''' (diese Seite wird für die Darstellung der Detailansicht verantwortlich sein)&lt;br /&gt;
&lt;br /&gt;
Sowohl MetaModels als auch die später benötigten Frontend-Module werden auf diese Seiten zugreifen müssen, deswegen richten wir diese vorab ein, auch wenn noch kein Inhalt definiert ist.&lt;br /&gt;
&lt;br /&gt;
==Einfachen Filter erstellen==&lt;br /&gt;
&lt;br /&gt;
[[File:icons_filter.png|left|32px]]&lt;br /&gt;
&lt;br /&gt;
Wir steigen nun wieder bei MetaModels bei '''Musicbox''' ein und gehen zur [[MetaModels_Backend:_Filter|MM-Backend Funktion: Filter]]&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_filter_einrichten.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Hier müssen wir thematisch etwas vorausgreifen, und ein Instrument bereitstellen, das bei der Einrichtung der Frontend-Ansichten in MetaModels benötigt wird: '''Wir brauchen einen Filter'''.&lt;br /&gt;
Bei MetaModels haben Filter eine breitere Bedeutung als dies umgangssprachlich der Fall ist. Filter steuern jede Art von Ansichtsdarstellung, sowohl im Backend als auch im Frontend.&amp;amp;nbsp;Aus der Sicht von MetaModels gibt es nicht eine Listen- und eine separate Archivansicht, wie man das z.B. von News oder Catalog her kennt. Für MetaModels ist jede Ansicht eine Listenansicht. Es ist der Filter, der bestimmt ob n Datensätze (aka Liste) oder nur 1 Datensatz (aka Detailansicht) angezeigt wird. Mit anderen Worten: Der Filter und nicht das Frontend-Modul macht den Unterschied.&lt;br /&gt;
&lt;br /&gt;
* Die Filterübersicht ist noch leer (Keine Einträge gefunden).&lt;br /&gt;
* Klick auf '''neu'''.&lt;br /&gt;
* Gib einen Namen ein, z.B. &amp;quot;FE Link Detail&amp;quot; (FE steht für Frontend) und speichere.&lt;br /&gt;
* Die Filterübersicht zeigt nun diesen Eintrag. Wähle das rechte Icon ''Filterattribute für Filtereinstellung definieren''.&lt;br /&gt;
* Klick auf '''neu''' und wähle das Icon (mit Pfeil) für '''einsetzen'''.&lt;br /&gt;
* Nun kannst du den Typ auswählen. Wir wählen '''Einfache Abfrage'''.&lt;br /&gt;
* Als Attribut wählen wir &amp;quot;Alias&amp;quot; und geben noch die URL-Parameter &amp;quot;auto_item&amp;quot; mit.&lt;br /&gt;
* Alle weiteren Optionen bleiben leer oder nicht angeklickt. Als Template nehmen wir was vorgegeben wird: &amp;quot;mm_filteritem_default&amp;quot;.&lt;br /&gt;
* &amp;quot;Speichern und Schliessen&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Der Filter &amp;quot;FE Link Detail&amp;quot; besteht nun aus einer einzigen Definition. Wir werden in einem späteren Beispiel sehen, dass ein Filter auch aus mehreren Definitionen bestehen kann. Das ist eine weitere Neuerung in MetaModels, nämlich, dass man sich im Wesentlichen seine eigenen Filter zusammenbauen kann.&lt;br /&gt;
&lt;br /&gt;
'''Wichtig:''' wenn als URL-Parameter ''auto_item'' verwendet werden soll, dann muss in den System-Einstellungen im BE im Abschnitt ''Frontend-Einstellungen'' die Option '''Den auto_item-Parameter verwenden''' angehakt sein, sonst erfolgt keine Ausgabe des Details ( =&amp;gt;There are no items matching your search.)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Listenansicht erstellen==&lt;br /&gt;
&lt;br /&gt;
[[File:icons_ausgabevorgaben.png|left|32px]]&lt;br /&gt;
Wähle die MM-Backend-Funktion [[MetaModels_Backend:_Ausgabevorgaben|&amp;quot;Ausgabevorgaben&amp;quot;]]&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_FE_Listenansicht_einrichten.png|thumb|400px]]&lt;br /&gt;
* Die Übersichtsseite zeigt dir bereits einen Eintrag &amp;quot;BE Listenansicht&amp;quot; an. Wir klicken auf &amp;quot;neu&amp;quot;&lt;br /&gt;
* Gib den Namen &amp;quot;FE Listenansicht&amp;quot; an&lt;br /&gt;
* Als ''Template'' wählen wir &amp;quot;metamodel_prerendered (global scope)&amp;quot;&lt;br /&gt;
* Als ''Zielseite'' geben wir die vorhin definierte Seite &amp;quot;Music&amp;quot; an. Klicke hierzu auf das Icon &amp;quot;Globus&amp;quot; und wähle die Seite aus dem Pulldown-Menu aus.{ {link_url::xx} } wird dann automatisch eingesetzt.&lt;br /&gt;
* Unter ''Filter settings'' wählen wir den vorhin definierten Filter &amp;quot;FE Link Detail&amp;quot;.&amp;lt;br&amp;gt;(''sollte der Filter zunächst nicht angezeigt werden, dann hilft =&amp;gt;speichern weiter'')&lt;br /&gt;
* &amp;quot;Speichern und schliessen&amp;quot;&lt;br /&gt;
* Nun erscheinen zwei Einträge in der Liste der Ausgabevorgaben&lt;br /&gt;
&lt;br /&gt;
Mit diesen Einstellungen legen wir grob fest, welches Aussehen (Template) die Seite haben, wohin die Reise gehen wird (Zielseite) und was bei dieser Zielseite angezeigt werden soll (was durch den Filter bestimmt wird).&amp;lt;br&amp;gt;&lt;br /&gt;
Hinweis: Wenn wir hier keinen Filter angeben, wird später im Frontend kein &amp;quot;Detail&amp;quot;-Link erscheinen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Attribute zur Listenansicht hinzufügen==&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_FE_Listenansicht_einrichten2.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
* Klick auf das Icon rechts &amp;quot;Attribute hinzufügen&amp;quot;&lt;br /&gt;
* Wähle &amp;quot;Add all&amp;quot; (geht schneller und einfacher als alle über &amp;quot;neu&amp;quot; hinzufügen)&lt;br /&gt;
* Bestätige die folgenden Screens&lt;br /&gt;
* Lege fest, welche Attribute in der Listenansicht angezeigt werden sollen (Icon &amp;quot;Auge&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
Man kann auch die Einstellung der Attribute anschauen, wie im letzten Screen angezeigt. Standardmäßig wird jedem Attribut zusätzlich ein Template mitgegeben. In unserem Beispiel analog dem Typ das Template &amp;quot;mm_attr_text (global scope)&amp;quot;.&lt;br /&gt;
Man erkennt hier schon im Ansatz, dass in MetaModels praktisch jedes Detail über ein Template gesteuert wird. Was für eine mögliche Individualisierung letztlich heißt, dass man in der freien Gestaltung potentiell unendliche viele Möglichkeiten zur Verfügung gestellt bekommt.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Detailansicht erstellen==&lt;br /&gt;
&lt;br /&gt;
[[File:icons_ausgabevorgaben.png|left|32px]]&lt;br /&gt;
Wähle die MM-Backend-Funktion [[MetaModels_Backend:_Ausgabevorgaben|&amp;quot;Ausgabevorgaben&amp;quot;]]&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_FE_Detailansicht_einrichten.png|thumb|400px]]&lt;br /&gt;
* Die Übersichtsseite zeigt dir die Einträge &amp;quot;BE Listenansicht&amp;quot; und &amp;quot;FE Listenansicht&amp;quot; an.&lt;br /&gt;
* Wir klicken auf &amp;quot;neu&amp;quot;&lt;br /&gt;
* Gib den Namen &amp;quot;FE Detailansicht&amp;quot; an&lt;br /&gt;
* Als Template wähen wir &amp;quot;metamodel_prerendered (global scope) an.&lt;br /&gt;
* In diesem Fall brauchen wir weder eine Zielseite noch ein Filtersettting anzugeben, denn bis hierher und nicht weiter wollen wir gelangen&lt;br /&gt;
* Speichern und schliessen&lt;br /&gt;
&lt;br /&gt;
Es erscheinen nun drei Einträge in der Liste der Ausgabevorgaben.&lt;br /&gt;
* BE Listenansicht&lt;br /&gt;
* FE Detailansicht&lt;br /&gt;
* FE Listenansicht&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Attribute zur Detailansicht hinzufügen==&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_FE_Detailansicht_einrichten2.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Das Vorgehen ist analog zum Punkt 4 zu verstehen. Einzig, dass wir hier am Ende alle Attribute anzeigen lassen (inkl. Bild und Beschreibung).&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Frontend-Module erstellen==&lt;br /&gt;
{{Hinweis|Einige Einstellmöglichkeiten in den nachstehend beschriebenen Modulen sind erst nach einer Zwischenspeicherung des Moduls erreichbar.}}&lt;br /&gt;
[[File:mm_backend_FE-Module_Liste.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Frontend-Modul für Listenansicht einrichten:&lt;br /&gt;
&lt;br /&gt;
* Wähle den ''Modultyp'' &amp;quot;MetaModels-Liste&amp;quot; aus&lt;br /&gt;
* Wähle das entsprechend ''MetaModel'' aus, in unserem Fall &amp;quot;Musicbox&amp;quot;&lt;br /&gt;
* Bei ''Sortieren nach'' und ''Sortierreihenfolge'' das gewünschte Attribut festlegen bzw. ob auf- oder absteigend sortiert werden soll&lt;br /&gt;
* ''Anzuwendende Filtereinstellungen'' bleibt vorläuftig leer. Das heißt soviel wie, dass wir in unserer Liste alle Datensätze (Musikstücke), die wir in unserer Musicbox erfasst haben, in der Liste anzeigen möchten&lt;br /&gt;
* Bei ''Eigenes Template für Datensatzliste auswählen'' den vorgegebenen Default &amp;quot;mod_metamodel_list&amp;quot; nehmen&lt;br /&gt;
* Bei ''Anzuwendende Rendereinstellung'' nehmen wir nun die zuvor definierte Ausgabevoreinstellung &amp;quot;FE Listenansicht&amp;quot;. Damit werden nur die Daten der Felder ausgegeben, die wir unter Punkt 9 als sichtbar gekennzeichnet haben, und zwar in der dort definierten Reihenfolge&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_FE-Module_Detail.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Dieses FE-Modul richten wir analog dem FE-Modul der Listenansicht ein, allerdings mit zwei wichtigen Unterschieden:&lt;br /&gt;
&lt;br /&gt;
* Bei ''Anzuwendende Filtereinstellungen'' muss nun der Filter &amp;quot;FE Link Detail&amp;quot; angewählt werden. Dieser bewirkt, dass man hier, in der Detailansicht, auch nur den Datenansatz angezeigt bekommt, den man in der Listenansicht angeklickt hatte.&lt;br /&gt;
* Bei ''Anzuwendende Rendereinstellungen'' wählen wir die in den Ansichtsdarstellungen definierte Einstellung &amp;quot;FE Detailansicht&amp;quot;. Hier werden alle Daten angezeigt, die wir unter Punkt ... als sichtbar angegeben haben. In diesem Falle alle.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Frontend-Module einbinden und Seitenvorschau==&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_FE-Module_einsetzen.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Zum Schluss bindet man die beiden Frontend-Module in den gewünschten Artikel ein.&lt;br /&gt;
Done.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Mögliches Endresultat=&lt;br /&gt;
&lt;br /&gt;
==Frontend Ansicht==&lt;br /&gt;
Und so könnte es aussehen&lt;br /&gt;
* links: Die Daten werden standardmässig in kompakter Form ausgegeben&lt;br /&gt;
* rechts: mit etwas CSS lassen sich die Daten sowohl in der Listen- wie Detailsicht gut formatieren&lt;br /&gt;
[[File:mm_frontend_beispiel.png|link=|900px]]&lt;br /&gt;
&lt;br /&gt;
==HTML-Konstrukt==&lt;br /&gt;
Die Daten werden über das Template &amp;quot;metamodel_prerendered.html5&amp;quot; ausgegeben. Jeder Datensatz wird als '''item''' ausgegeben, dieser besteht aus den Attributen, die wir in den Rendereinstellungen definiert haben. Bei jedem Attribut wird standardmässig '''label''' und '''value''' ausgegeben.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;item&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;field attribut1&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;label&amp;quot;&amp;gt;Titel des attributs1&amp;lt;/span&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;Wert des attribut1&amp;lt;/span&amp;gt;&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;field attribut2&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;label&amp;quot;&amp;gt;Titel des attribut2&amp;lt;/span&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;Wert des attribut2&amp;lt;/span&amp;gt;&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;field attribut3&amp;quot;&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;item&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;item&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[MetaModels_Beispiel_1|Zurück zur Beispiel 1]] | [[MetaModels_Beispiel_3|Weiter zum Beispiel 3: Weitere Filter hinzufügen]]&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/MetaModels_Beispiel_1</id>
		<title>MetaModels Beispiel 1</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/MetaModels_Beispiel_1"/>
				<updated>2013-05-16T14:08:20Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: /* Vorgehensschritte */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:MetaModels]]&lt;br /&gt;
&lt;br /&gt;
=Aufgabenstellung: Backend einrichten=&lt;br /&gt;
Als Beispielprojekt soll eine einfache &amp;quot;Musikbox&amp;quot; gebaut werden, in der Musikstücke mit gewissen Attributen (&amp;quot;Eigenschaften&amp;quot;) erfasst werden. Zu diesem Zweck wird zuerst das Backend aufgebaut. Hierzu braucht man eine Übersichtsliste und ein Erfassungsformular.&lt;br /&gt;
&lt;br /&gt;
===Vorgehensschritte===&lt;br /&gt;
# [[MetaModels|Start: Installation]] - Download und Installation von MetaModels&lt;br /&gt;
# [[MetaModels_Beispiel_1|Beispiel 1: Backend einrichten]] - Eingeben der Sammlung&lt;br /&gt;
# [[MetaModels_Beispiel_2|Beispiel 2: Frontend einrichten]] - Die Inhalte im Frontend anzeigen (Liste und Detail)&lt;br /&gt;
# [[MetaModels_Beispiel_3|Beispiel 3: Weitere Filter einrichten]] – Inhalte auf Published setzen, einfache Select-Filter&lt;br /&gt;
# [[MetaModels_Beispiel_4|Beispiel 4: Weiteres MetaModels einrichten]] - komplexe Select-Filter einsetzen&lt;br /&gt;
# [[MetaModels_Beispiel:_Übersetzter_select|Weiteres Beispiel: Übersetzter select]] - Mehrsprachiges Select-Attribut einrichten&lt;br /&gt;
&lt;br /&gt;
=Eine leere Datenbank erstellen=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_startscreen.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Zuerst wird ein neues MetaModel erstellt. Technischen gesehen wird dabei in der Contao-Datenbank eine leere Tabelle angelegt. &lt;br /&gt;
&lt;br /&gt;
* Klick auf '''Neues MetaModel'''&lt;br /&gt;
* Name: '''Musicbox'''&lt;br /&gt;
* TabellenName: '''mm_musicbox'''&lt;br /&gt;
&lt;br /&gt;
===Anmerkungen===&lt;br /&gt;
&lt;br /&gt;
* Obwohl es so aussieht, als sei '''Übersetzung''' eine frei wählbare Option, ist &amp;quot;diese Option&amp;quot; ein MUSS, denn ohne Sprachenzuweisung funktioniert das ganze MetaModel nicht!&lt;br /&gt;
* '''Varianten unterstützen''' wird vorläufig nicht benötigt.... und gegebenenfalls zu einem späteren Zeitpunkt erläutert.&lt;br /&gt;
&lt;br /&gt;
===Auszuführen===&lt;br /&gt;
&lt;br /&gt;
* '''Übersetzung''' anhaken&lt;br /&gt;
* mindestens eine unterstützte Sprache auswählen&lt;br /&gt;
* eine Sprache (z.B. '''Deutsch''') zum Fallback machen&lt;br /&gt;
* '''Varianten aktivieren''' vorerst nicht anhaken&lt;br /&gt;
&lt;br /&gt;
Man sieht nun ein MetaModel &amp;quot;Musicbox&amp;quot; mit 0 (null) Datensätzen und einer Reihe von Icons, die nun zur Weiterbearbeitung genutzt werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==MetaModels Backend-Funktionen==&lt;br /&gt;
Kurze Erklärung, was sich hinter den nun dargestellten Symbolen verbirgt (in Klammern ist angegegeben, was als Tooltip ausgegeben wird):&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_funktionen_icons.png|link=|border]]&lt;br /&gt;
&lt;br /&gt;
[[File:icons_bearbeiten.png|left|32px]]&lt;br /&gt;
&lt;br /&gt;
Hier gelangt man wieder zurück zum gleichen Screen, wie bie der Erstellung eines neuen MetaModels. Hier kann man jederzeit sowohl den '''Namen''' als auch den '''Tabellennamen''' des MetaModels ändern.&lt;br /&gt;
&lt;br /&gt;
# [[MetaModels_Backend:_Attribute|'''Attribute''']] (Definieren Sie die Attribute in MetaModel)&lt;br /&gt;
# [[MetaModels_Backend:_Ausgabevorgaben|'''Ausgabevorgaben''']] (Definieren Sie Ausgabevorgaben für das MetaModel)&lt;br /&gt;
# [[MetaModels_Backend:_Paletteneinstellungen|'''Paletteneinstellungen''']] (Paletteneinstellungen für das MetaModel definieren)&lt;br /&gt;
# [[MetaModels_Backend:_Filter|'''Filter''']] (Definieren Sie Filter für das MetaModel)&lt;br /&gt;
# [[MetaModels_Backend:_Ansichtseinstellungen|'''Paletten- und Ansichtseinstellungen''']] (Paletten- und Ansichtseinstellungen für MetaModel festlegen)&lt;br /&gt;
&lt;br /&gt;
=Das Backend konfigurieren=&lt;br /&gt;
&lt;br /&gt;
Um das Backend für die Erfassung der Daten vorzubereiten benötigt man a) eine Übersichtsliste und b) ein Erfassungsformular. Hierzu braucht man 4 der 5 Backend-Funktionen von MetaModels.&lt;br /&gt;
&lt;br /&gt;
* Datenbank erstellen, benennen, Sprachvariable zuweisen&lt;br /&gt;
* Felder definieren, Attribute festlegen, Erfassungsformular gestalten&lt;br /&gt;
* Übersichtsliste definieren&lt;br /&gt;
* Erfassung (z.B. für Redakteure) freigeben&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==MM-Funktion: Attribute==&lt;br /&gt;
&lt;br /&gt;
[[File:icons_attribute.png|left|32px]]&lt;br /&gt;
&lt;br /&gt;
Hier erfasst man die benötigen Felder für die Eingabe.&lt;br /&gt;
s. [[MetaModels_Backend:_Attribute|allgemeine Infos]] zu den Attributen&lt;br /&gt;
&lt;br /&gt;
[[File:mm_attribute_erfassen.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Hierzu gibt man folgende Felder ein (im nebenstehenden Screen ist das beispielhaft für das Attribut &amp;quot;Titel&amp;quot; dargestellt):&lt;br /&gt;
{|&lt;br /&gt;
|- &lt;br /&gt;
| '''Titel'''&lt;br /&gt;
|&lt;br /&gt;
* Attribute Type= Text&lt;br /&gt;
* Column name= title&lt;br /&gt;
* Name (deutsch)= Titel&lt;br /&gt;
* Description (deutsch)= Name des Stücks&lt;br /&gt;
|- &lt;br /&gt;
| '''Interpret'''&lt;br /&gt;
| &lt;br /&gt;
* Attribute Type= Text&lt;br /&gt;
* Column name= composer&lt;br /&gt;
* Name (deutsch)= Interpret&lt;br /&gt;
* Description (deutsch)= Name der Band, SängerIn oder InterpretIn&lt;br /&gt;
|- &lt;br /&gt;
| '''Land'''&lt;br /&gt;
| &lt;br /&gt;
* Attribute Type= Text&lt;br /&gt;
* Column name= country&lt;br /&gt;
* Name (deutsch)= Land&lt;br /&gt;
* Description (deutsch)=&lt;br /&gt;
|- &lt;br /&gt;
| '''Jahr'''&lt;br /&gt;
| &lt;br /&gt;
* Attribute Type= Dezimal&lt;br /&gt;
* Column name= year&lt;br /&gt;
* Name (deutsch)= Jahr&lt;br /&gt;
* Description (deutsch)= Erscheinungsjahr&lt;br /&gt;
|- &lt;br /&gt;
| '''Beschreibung'''&lt;br /&gt;
| &lt;br /&gt;
* Attribute Type= Langtext&lt;br /&gt;
* Column name= description&lt;br /&gt;
* Name (deutsch)= Beschreibung&lt;br /&gt;
* Description (deutsch)= Wikipedia, Kurzbeschreibung, etc.&lt;br /&gt;
|- &lt;br /&gt;
| '''Cover'''&lt;br /&gt;
| &lt;br /&gt;
* Attribute Type= Datei&lt;br /&gt;
* Column name= images&lt;br /&gt;
* Name (deutsch)= Cover&lt;br /&gt;
* Description (deutsch)= Cover, Bilder&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|Bis jetzt wurde bei keinem der Attribute die Option '''Unique values''' aktiviert.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Um die Einträge eindeutig identifizieren zu können, wird zusätzlich ein Alias-Attribut erzeugt:&lt;br /&gt;
|- &lt;br /&gt;
| '''Alias'''&lt;br /&gt;
| &lt;br /&gt;
* Attribute Type= Alias&lt;br /&gt;
* Column name= alias&lt;br /&gt;
* Name (deutsch)= Alias&lt;br /&gt;
* Description (deutsch)=&lt;br /&gt;
* Unique values= aktiviert&lt;br /&gt;
* Alias Neuerstellung erzwingen = aktiviert&amp;lt;br&amp;gt;(dann muss kein Alias eingegeben werden, wird neu berechnet bei Änderung des Titels)&lt;br /&gt;
* Aliasfelder = Titel&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==MM-Funktion: Ausgabevorgaben==&lt;br /&gt;
[[File:icons_ausgabevorgaben.png|left|32px]]&lt;br /&gt;
Hier wird die Ansicht erfasst: Eine Listendarstellung für das Backend.&lt;br /&gt;
&lt;br /&gt;
[[File:mm_ausgabe_definieren.png|right|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
* Klick auf '''neu'''&lt;br /&gt;
* '''BE Listenansicht''' eingeben&lt;br /&gt;
* Der Rest kann so stehen bleiben, denn für die BE Listenansicht braucht man weder eine '''Zielseite''' noch '''Filter settings'''.&lt;br /&gt;
&lt;br /&gt;
(s. [[MetaModels_Backend:_Ausgabevorgaben|allgemeine Ausgabe-Vorgaben]])&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:mm_ausgabe_attribute_definieren.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Um auszuwählen, welche Felder in der BE Listenansicht angezeigt werden sollen, klickt man einfach auf das entsprechende Icon rechts:&lt;br /&gt;
&lt;br /&gt;
* '''Add all''' fügt alle Felder auf einen Rutsch hinzu. Man kann auch '''Neu''' wählen und die Felder einzeln hinzufügen, aber mit '''Add all''' gehts am schnellsten.&lt;br /&gt;
* Die Frage, ob alle Attribute hinzugefügt werden sollen(&amp;quot;''Add all attributes to render setting''&amp;quot;), wird mit '''Weiter''' bestätigt.&lt;br /&gt;
* Nun werden alle Attribute aufgelistet, die im vorangegangenen Schritt erfasst worden sind.&lt;br /&gt;
&lt;br /&gt;
Über das übliche 'Auge' werden nur die Attribute sichtbar gemacht, die in der Backend-Liste angezeigt werden sollen.&lt;br /&gt;
Für dieses Tutorial wählen wir : '''Titel''', '''Interpret''', '''Land''' und '''Jahr'''.&lt;br /&gt;
&lt;br /&gt;
(( alter Screen, wird ersetzt ))&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==MM-Funktion: Paletteneinstellung==&lt;br /&gt;
&lt;br /&gt;
[[File:icons_paletteneinstellungen.png|left|32px]]&lt;br /&gt;
&lt;br /&gt;
Hier legt man fest, wo und wie im BE die Daten zur Musicbox erfasst werden sollen.&lt;br /&gt;
&lt;br /&gt;
===BE-Liste===&lt;br /&gt;
[[File:mm_paletten_BE_liste.png|thumb|400px]]&lt;br /&gt;
Nach Klick auf '''Neue Palette''' öffnet sich ein [[MetaModels_Backend:_Paletteneinstellungen|Erfassungsformular]]. Hier die Werte eingeben, wie nebenan abgebildet:&lt;br /&gt;
* Name: '''BE Erfassung'''&lt;br /&gt;
* Option '''Als Standard benutzen'''&lt;br /&gt;
* Panel-Layout: Es stehen 4 Werte ('''filter''', '''sort''', '''search''' und '''limit''') zur Verfügung. Diese können auch über das Icon rechts abgerufen werden.&lt;br /&gt;
**Werden hier mehrere Werte eingegeben, so sind diese entweder durch Komma (,) oder durch Semikolon (;) voneinander zu trennen - nur mit Leerzeichen getrennte Werte werden ignoriert.&lt;br /&gt;
**Komma =&amp;gt; Ausgabe in der gleichen Zeile wie der vorhergehende Wert&lt;br /&gt;
**Semikolon =&amp;gt; Ausgabe in neuer Zeile.&lt;br /&gt;
* Integration: '''Als Einzeltabelle'''&lt;br /&gt;
* Sortiermodus: '''2 Datensätze nach wählbarem Feld sortiert darstellen''' (Wichtig: Sowohl dieser Wert als auch '''sort''' im '''Panel-Layout''' müssen definiert sein, ansonsten erscheint die Sortier-Funktion nicht.&lt;br /&gt;
* Sortierung: Auf- oder Absteigend... wie es dir gefällt&lt;br /&gt;
* Backend-Bereich: '''Inhalte''' (oder wo soll es in der Backend-Navigation eingesetzt werden)&lt;br /&gt;
* Backend-Icon: Auf Wunsch kann hier ein eigenes Icon gesetzt werden&lt;br /&gt;
* Backend-Beschreibung: wie abgebildet&lt;br /&gt;
&lt;br /&gt;
===Anmerkung===&lt;br /&gt;
Die Option '''Sortierung''' ist beim erstmaligen Bearbeiten der Seite noch nicht sichtbar. Es empfiehlt sich daher, nach Auswahl des '''Backend-Bereich'''s (hier: Inhalte) die Seite zu speichern. Jetzt kann die Sortierung festgelegt werden.&lt;br /&gt;
&lt;br /&gt;
Nun wurde eine Palette namens '''BE Erfassung''' erstellt. Im Folgenden wird nun das Erfassungs-Formular ein wenig gestaltet.&lt;br /&gt;
&lt;br /&gt;
Im letzten Kapitel auf dieser Seite ('''Die Daten erfassen''') sieht man, wie die Liste/das Formular zwecks Erfassung der Musikstücke aussieht.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===BE-Formular===&lt;br /&gt;
[[File:mm_paletten_BE_formular.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Man fügt nun alle Attribute zur Palette hinzu, indem man auf das Icon rechts (''Die Einstellungen der Palette ID xx bearbeiten'') klickt.&lt;br /&gt;
* '''Alle hinzufügen''' wählen und alle nun folgenden Screens bestätigen.&lt;br /&gt;
* Man erhält so eine Liste aller Attribute, die man einzeln bearbeiten kann.&lt;br /&gt;
* Auf Wunsch kan man hier auch die Reihenfolge umstellen und so bestimmen, wie die Daten erfasst werden sollen.&lt;br /&gt;
* Angefangen wird mit dem ersten Eintrag '''Titel [text]'''&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:mm_paletten_BE_formular2.png|thumb|400px]]&lt;br /&gt;
&lt;br /&gt;
Folgendes Beispiel zeigt, was man bei der Erfassung des Attributs '''Titel''' alles einstellen kann.&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Klick auf das Editier-Icon zeigt die wichtigsten Einstellungen:&lt;br /&gt;
* Backend-Class: Damit kann man das Formular bzw. die Erfassungfelder etwas gestalten. 5 Werte stehen zur Verfügung: '''w50''', '''clr''', '''long''', '''wizard''' und '''m12'''&lt;br /&gt;
* Pflichtfeld: Durch Anklicken legt man fest, ob auf diesem Feld eine Inhaltsprüfung stattfinden soll. Die Felder werden mit einem roten Asterisk gekennzeichnet.&lt;br /&gt;
* Filterbar, Durchsuchbar, Sortierbar: Mit diesen Optionen kann man die BE-Liste etwas organisieren. Praktisch wenn man mehrere Dutzend/Hunderte von Datensätze erfasst hat.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==MM-Funktion: Zugriffsrechte definieren==&lt;br /&gt;
&lt;br /&gt;
[[File:icons_ansichtseinstellungen.png|left|32px]]&lt;br /&gt;
&lt;br /&gt;
Hier legt man fest, wer im Backend auf die Daten von MetaModel zugreifen und diese editieren darf.&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_zugriffsrechte_definieren.png|link=MetaModels_Backend:_Ansichtseinstellungen|600px]]&lt;br /&gt;
&lt;br /&gt;
=Die Daten erfassen=&lt;br /&gt;
&lt;br /&gt;
[[File:mm_backend_erfassen.png|thumb|600px]]&lt;br /&gt;
&lt;br /&gt;
Und so sieht's aus:&amp;lt;br&amp;gt;Nun wird in der linken Navigationsübersicht &amp;quot;Backend-Module&amp;quot; ein neuer Eintrag angezeigt und man kann mit der Erfassung der Musikstücke beginnen.&lt;br /&gt;
&lt;br /&gt;
* Mit Klick auf '''MyMusik''' gelangt man auf die BE Listenansicht. Diese ist noch leer&lt;br /&gt;
* Mit Klick auf '''Neuer Datensatz'''. öffnet sich ein Formular, mit dem sich nun der erste Datensatz erfassen lässt&lt;br /&gt;
* Die gewünschten Werte eingeben und mit '''Speichern und Schliessen''' bestätigen&lt;br /&gt;
* Nun erscheint der erste Eintrag in der BE Listenansicht&lt;br /&gt;
* Diesen Vorgang wiederholen, bis alle Datensätze erfasst wurden&lt;br /&gt;
* Über der BE Listenansicht stehen nun die Panel-Layout Funktionen '''Suchen''', '''Sortieren''', '''Filtern''' und '''Anzeigen''' zur Verfügung&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[MetaModels_Beispielprojekt|Zurück zur Beispiel-Übersicht]] | [[MetaModels_Beispiel_2|Weiter zum Beispiel 2: Erstellung der Frontend-Ansicht]]&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/MetaModels</id>
		<title>MetaModels</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/MetaModels"/>
				<updated>2013-05-16T14:08:02Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: /* Vorgehensschritte */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
[[Category:MetaModels]]&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Metamodels Team&lt;br /&gt;
| DevSite=&lt;br /&gt;
| Version=ab 2.11.X&lt;br /&gt;
| ERLink=&lt;br /&gt;
| VCSLink=https://github.com/MetaModels/core&lt;br /&gt;
| TrackerLink=https://github.com/MetaModels/core/issues&lt;br /&gt;
| Depending=[[DC_General]] [[Justtextwidgets]] [[MultiColumnWizard]] [[MetaPalettes]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=Vorwort: Wiki-Dokumentation der Erweiterung MetaModels (Nachfolger des Catalog)=&lt;br /&gt;
Die Erweiterung MetaModels ist der Nachfolger der Catalog-Extension. Der Code wurde komplett neu entwickelt. Eine Kompatibilität zum Catalog besteht nicht.&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red; font-size:18px; font-weight:bold&amp;quot;&amp;gt;MetaModels läuft mit Contao 2.11.x und setzt PHP 5.3 voraus. &amp;lt;/span&amp;gt; &amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:black; font-size:18px; font-weight:bold&amp;quot;&amp;gt;MetaModels ist (noch) nicht mit Contao 3.x kompatibel.&amp;lt;/span&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Vorgehensschritte===&lt;br /&gt;
# [[MetaModels|Start: Installation]] - Download und Installation von MetaModels&lt;br /&gt;
# [[MetaModels_Beispiel_1|Beispiel 1: Backend einrichten]] - Eingeben der Sammlung&lt;br /&gt;
# [[MetaModels_Beispiel_2|Beispiel 2: Frontend einrichten]] - Die Inhalte im Frontend anzeigen (Liste und Detail)&lt;br /&gt;
# [[MetaModels_Beispiel_3|Beispiel 3: Weitere Filter einrichten]] – Inhalte auf Published setzen, einfache Select-Filter&lt;br /&gt;
# [[MetaModels_Beispiel_4|Beispiel 4: Weiteres MetaModels einrichten]] - komplexe Select-Filter einsetzen&lt;br /&gt;
# [[MetaModels_Beispiel:_Übersetzter_select|Weiteres Beispiel: Übersetzter select]] - Mehrsprachiges Select-Attribut einrichten&lt;br /&gt;
&lt;br /&gt;
=Download=&lt;br /&gt;
&lt;br /&gt;
==Download von der Demosite==&lt;br /&gt;
[[Datei:logo-metamodels.png|link=|left|105px]]&lt;br /&gt;
Unter der URL [http://now.metamodel.me now.metamodel.me] findet sich die Webseite zur Extension mit einer Frontentdemo und der Möglichkeit, Installationsarchive in den Formaten '''tgz''', '''tbz''' und '''zip''' mit so genannten Nightly Builds zu laden. Diese Archive beinhalten die MetaModels-Dateien, Attribute, Filter sowie sämtliche anderen Erweiterungen, die für den Betrieb nötig sind und ansonsten separat heruntergeladen und installiert werden müssen.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Download aus dem Entwicklungsrepository GitHub==&lt;br /&gt;
&lt;br /&gt;
[[Datei:logo-github.png|link=|left|105px]]&lt;br /&gt;
Zu finden ist die Erweiterung MetaModels auf GitHub:&lt;br /&gt;
[https://github.com/MetaModels github.com/Metamodels]&amp;lt;br&amp;gt;&lt;br /&gt;
Aktuell können das Core, dazu abhängige weitere Erweiterungen und alle weiteren MetaModels Attribute/Filter manuell installiert werden.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Core===&lt;br /&gt;
* [https://github.com/MetaModels/core MetaModels (Das Core-Modul)]&lt;br /&gt;
&lt;br /&gt;
===Abhängigkeiten===&lt;br /&gt;
Benötigt werden folgende Erweiterungen:&lt;br /&gt;
* [https://github.com/MetaModels DC_General]&lt;br /&gt;
* [https://contao.org/de/extension-list/view/MetaPalettes.html MetaPalettes]&lt;br /&gt;
* [http://www.contao.org/erweiterungsliste/view/MultiColumnWizard.html MultiColumnWizard]&lt;br /&gt;
* [https://github.com/Discordier/justtextwidgets justtextwidgets]&lt;br /&gt;
* [https://contao.org/de/extension-list/view/geoprotection.de.html geoprotection] (wird nur für das Attribut '''Geoprotection''' benötigt)&lt;br /&gt;
&lt;br /&gt;
===Verfügbare Attribute und Filter===&lt;br /&gt;
Sobald der Core und benötigten sonstigen Erweiterungen installiert sind, werde die weiteren Attributs- und Filterextensions des MetaModels benötigt.&lt;br /&gt;
Dazu gehören:&lt;br /&gt;
{| style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! '''Attribute''' !! '''Attribute (translated)''' !! '''Filter'''&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
* [https://github.com/MetaModels/attribute_alias Attribut: Alias]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_checkbox Attribut: Checkbox]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_combinedvalues Attribut: Combined Values]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_country Attribut: Country (Land)]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_decimal Attribut: Decimal]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_file Attribut: File]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_geoprotection Attribut: Geoprotection (Länderzuordnung)]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_langcode Attribut: Langcode (Sprachencode)]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_longtext Attribut: Longtext]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_select Attribut: Select]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_numeric Attribut: Numeric]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_rating Attribut: Rating]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_tags Attribut: Tags]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_text Attribut: Text]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_timestamp Attribut: Timestamp (Datum)]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_url Attribut: URL]&lt;br /&gt;
|&lt;br /&gt;
* [https://github.com/MetaModels/attribute_translatedalias Attribut: Translated Alias]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_translatedfile Attribut: Translated File]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_translatedlongtext Attribut: Translated Longtext]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_translatedselect Attribut: Translated Select]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_translatedtags Attribut: Translated Tags]&lt;br /&gt;
* [https://github.com/MetaModels/attribute_translatedtext Attribut: Translated Text]&lt;br /&gt;
|&lt;br /&gt;
* [https://github.com/MetaModels/filter_checkbox Filter: Checkbox]&lt;br /&gt;
* [https://github.com/MetaModels/filter_fromto Filter: FromTo]&lt;br /&gt;
* [https://github.com/MetaModels/filter_range Filter: Range]&lt;br /&gt;
* [https://github.com/MetaModels/filter_select Filter: Select]&lt;br /&gt;
* [https://github.com/MetaModels/filter_tags Filter: Tags]&lt;br /&gt;
* [https://github.com/MetaModels/filter_text Filter: Text]&lt;br /&gt;
|}&lt;br /&gt;
Attribut- und Filterextensions werden für den Betrieb von MetaModels benötigt. Welche dieser Erweiterungen in einem Projekt zu Einsatz kommen sollen ist abhängig von den benötigten Funktionen.&lt;br /&gt;
&lt;br /&gt;
==Download via git und Kommandozeile==&lt;br /&gt;
In einer bash (Linux Kommandozeile bzw. cygwin Kommandozeile) kann man sich auch alle Unterprojekte der MetaModels via git clonen. Man sollte jedoch vorher in den Ordner wechseln, wohin die Projekte heruntergeladen werden sollen.&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;width:100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! '''Linux'''  !! '''MacOS'''&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
In Benutzerverzeichnis wechseln und für den Pull ein Verzeichniss anlegen.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ~&lt;br /&gt;
mkdir MetaModels&lt;br /&gt;
cd MetaModels&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
In Benutzerverzeichnis wechseln und für den Pull ein Verzeichniss anlegen.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ~&lt;br /&gt;
mkdir MetaModels&lt;br /&gt;
cd MetaModels&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
Alle MetaModel Repos holen&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
for i in `wget -qO- https://api.github.com/orgs/MetaModels/repos | \&lt;br /&gt;
grep clone_url | \&lt;br /&gt;
cut -d \&amp;quot; -f4`; do \&lt;br /&gt;
git clone $i; \&lt;br /&gt;
done;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
Alle MetaModel Repos holen&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
for i in `curl https://api.github.com/orgs/MetaModels/repos | \&lt;br /&gt;
grep clone_url | \&lt;br /&gt;
cut -d \&amp;quot; -f4`; do \&lt;br /&gt;
git clone $i; \&lt;br /&gt;
done;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
Die zu installieren Ordner und Dateien müssen zur Installation im Contao-System wie folgt hochgeladen werden:&lt;br /&gt;
{| style=&amp;quot;width:80%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! '''Module''' (/system/modules) !! '''Drivers''' (/system/drivers)&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
* generalDriver&lt;br /&gt;
* justtextwidgets&lt;br /&gt;
* metamodels&lt;br /&gt;
* metamodelsattribute_alias&lt;br /&gt;
* metamodelsattribute_checkbox&lt;br /&gt;
* metamodelsattribute_combinedvalues&lt;br /&gt;
* metamodelsattribute_country&lt;br /&gt;
* metamodelsattribute_decimal&lt;br /&gt;
* metamodelsattribute_file&lt;br /&gt;
* metamodelsattribute_geoprotection&lt;br /&gt;
* metamodelsattribute_langcode&lt;br /&gt;
* metamodelsattribute_longtext&lt;br /&gt;
* metamodelsattribute_numeric&lt;br /&gt;
* metamodelsattribute_rating&lt;br /&gt;
* metamodelsattribute_select&lt;br /&gt;
* metamodelsattribute_tags&lt;br /&gt;
* metamodelsattribute_text&lt;br /&gt;
* metamodelsattribute_timestamp&lt;br /&gt;
* metamodelsattribute_translatedalias&lt;br /&gt;
* metamodelsattribute_translatedfile&lt;br /&gt;
* metamodelsattribute_translatedlongtext&lt;br /&gt;
* metamodelsattribute_translatedselect&lt;br /&gt;
* metamodelsattribute_translatedtags&lt;br /&gt;
* metamodelsattribute_translatedtext&lt;br /&gt;
* metamodelsattribute_url&lt;br /&gt;
* metamodelsfilter_checkbox&lt;br /&gt;
* metamodelsfilter_fromto&lt;br /&gt;
* metamodelsfilter_range&lt;br /&gt;
* metamodelsfilter_select&lt;br /&gt;
* metamodelsfilter_tags&lt;br /&gt;
* metamodelsfilter_text&lt;br /&gt;
* metapalettes&lt;br /&gt;
* multicolumnwizard&lt;br /&gt;
|&lt;br /&gt;
* DC_General.php&lt;br /&gt;
|}&lt;br /&gt;
Danach muss mittels des Installtools ein Update der Datenbank gemacht werden.&lt;br /&gt;
&lt;br /&gt;
=Backend Ansichten=&lt;br /&gt;
&lt;br /&gt;
===Leeres MetaModel===&lt;br /&gt;
[[Datei:MetaModels_Backend_System.png|right|600px]]&lt;br /&gt;
Nach Aktualisierung der Datenbank erscheint '''MetaModels''' neu als eigenständige Einstellung unter '''System'''.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Erweiterungsverwaltung===&lt;br /&gt;
[[Datei:MetaModels_Backend_System_ER.png|link=|right|600px]]&lt;br /&gt;
In der Erweiterungsverwaltung findet sich hingegen nicht viel, was auf MetaModels hinweist. Aber das ist gut so (Stand Dez. 2012).&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===MetaModel mit null Datensätzen===&lt;br /&gt;
[[Datei:MetaModels_Backend_System_Beispiel.png|link=|right|600px]]&lt;br /&gt;
Nachdem ein erstes neues MetaModel erstellt wurde, erscheint folgende Darstellung:&lt;br /&gt;
Weiterführende Informationen zu einem einfachen Praxisbeispiel findet man unter [[MetaModels_Beispielprojekt|MetaModels Beispielprojekt]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Konfiguration=&lt;br /&gt;
&lt;br /&gt;
===Dokumentation der Attribute===&lt;br /&gt;
[[File:icons_attribute.png|left|link=|32px]]&lt;br /&gt;
Den Überblick findest du [[MetaModels_Backend:_Attribute|hier]].&lt;br /&gt;
&lt;br /&gt;
===Dokumentation der Ausgabevorgaben===&lt;br /&gt;
[[File:icons_ausgabevorgaben.png|left|link=|32px]]&lt;br /&gt;
Den Überblick findest du [[MetaModels_Backend:_Ausgabevorgaben|hier]].&lt;br /&gt;
&lt;br /&gt;
===Dokumentation der Paletteneinstellungen===&lt;br /&gt;
[[File:icons_paletteneinstellungen.png|left|link=|32px]]&lt;br /&gt;
Den Überblick findest du [[MetaModels_Backend:_Paletteneinstellungen|hier]].&lt;br /&gt;
&lt;br /&gt;
===Dokumentation der Filter===&lt;br /&gt;
[[File:icons_filter.png|left|link=|32px]]&lt;br /&gt;
Den Überblick findest du [[MetaModels_Backend:_Filter|hier]].&lt;br /&gt;
&lt;br /&gt;
===Dokumentation der Ansichtseinstellungen===&lt;br /&gt;
[[File:icons_ansichtseinstellungen.png|left|link=|32px]]&lt;br /&gt;
Den Überblick findest du [[MetaModels_Backend:_Ansichtseinstellungen|hier]].&lt;br /&gt;
&lt;br /&gt;
=Beispiele=&lt;br /&gt;
Einführende Beispiele, wie man MetaModels einrichten und konfigurieren kannst, findest du hier:&lt;br /&gt;
# [[MetaModels_Beispiel_1| Backend einrichten]] - am Beispiel einer Musiksammlung, Eingeben der Sammlung&lt;br /&gt;
# [[MetaModels_Beispiel_2| Frontend einrichten]] - Die Inhalte im Frontend anzeigen (Liste und Detail)&lt;br /&gt;
# [[MetaModels_Beispiel_3| Weitere Filter einrichten]] – Inhalte auf Published setzen, einfache Select-Filter&lt;br /&gt;
# [[MetaModels_Beispiel_4| Weiteres MetaModels einrichten]] - komplexe Select-Filter einsetzen&lt;br /&gt;
&lt;br /&gt;
=Frontendausgabe=&lt;br /&gt;
{{Hinweis|Die Dokumentation sollte in eine andere Seite ausgelagert werden}}&lt;br /&gt;
----&lt;br /&gt;
started by: [[Benutzer:Planepix|Planepix]] 00:49, 28. Nov. 2012 (CET)&amp;lt;br&amp;gt;&lt;br /&gt;
completed by [[Benutzer:Luis|Luis]], [[Benutzer:lucina|Lucina]]&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/MetaModels_Beispiel:_%C3%9Cbersetzter_select</id>
		<title>MetaModels Beispiel: Übersetzter select</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/MetaModels_Beispiel:_%C3%9Cbersetzter_select"/>
				<updated>2013-05-16T14:07:24Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: /* Vorgehensschritte */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:MetaModels]]&lt;br /&gt;
&lt;br /&gt;
=Aufgabenstellung: Übersetzter select einrichten=&lt;br /&gt;
Es soll ein &amp;quot;Übersetzter select&amp;quot;-Attribut eingerichtet werden.&lt;br /&gt;
&lt;br /&gt;
===Vorgehensschritte===&lt;br /&gt;
# [[MetaModels|Start: Installation]] - Download und Installation von MetaModels&lt;br /&gt;
# [[MetaModels_Beispiel_1|Beispiel 1: Backend einrichten]] - Eingeben der Sammlung&lt;br /&gt;
# [[MetaModels_Beispiel_2|Beispiel 2: Frontend einrichten]] - Die Inhalte im Frontend anzeigen (Liste und Detail)&lt;br /&gt;
# [[MetaModels_Beispiel_3|Beispiel 3: Weitere Filter einrichten]] – Inhalte auf Published setzen, einfache Select-Filter&lt;br /&gt;
# [[MetaModels_Beispiel_4|Beispiel 4: Weiteres MetaModels einrichten]] - komplexe Select-Filter einsetzen&lt;br /&gt;
# [[MetaModels_Beispiel:_Übersetzter_select|Weiteres Beispiel: Übersetzter select]] - Mehrsprachiges Select-Attribut einrichten&lt;br /&gt;
&lt;br /&gt;
===Hinweis===&lt;br /&gt;
Es wird von Vorwissen aus den anderen Beispielen ausgegangen!&lt;br /&gt;
&lt;br /&gt;
=Neue MetaModels erstellen=&lt;br /&gt;
[[File:Mm_translatedselect_Ubersicht.png|thumb|400px]]&lt;br /&gt;
Wir legen zwei neue MetaModels an:&lt;br /&gt;
# enthält die übersetzten Einträge für das select Feld (Hier: Mehrsprachige Einträge)&lt;br /&gt;
# zur Anwendung des select Feldes (Hier: Data)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
== MM für die mehrsprachigen Einträge ==&lt;br /&gt;
[[File:Mm_translatedselect_entriestable.png|thumb|400px]]&lt;br /&gt;
Erst legen wir das MetaModel an.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_entriesattribute.png|thumb|400px]]&lt;br /&gt;
In diesem erzeugen wir ein &amp;quot;Übersetzter Text&amp;quot; Attribut.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_entrie1de.png|thumb|200px]]&lt;br /&gt;
[[File:Mm_translatedselect_entrie1en.png|thumb|200px]]&lt;br /&gt;
[[File:Mm_translatedselect_entries.png|thumb|400px]]&lt;br /&gt;
Nach dem Bearbeiten der Eingabemasken und Rendereinstellungen (Wie in den anderen Beispielen) fügen wir die gewünschten Einträge in den gewünschten Sprachen hinzu. &lt;br /&gt;
Hier wurden zwei Einträge in jeweils zwei Sprachen benutzt.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_phpmyadmin.png|thumb|400px]]&lt;br /&gt;
Anschließend gehen wir auf den mysql server und betrachten die Tabelle &amp;quot;tl_metamodel_translatedtext&amp;quot;. Dort suchen wir die gerade erstellten Einträge und merken uns den Wert &amp;quot;att_id&amp;quot;.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
==  MM zur Anwendung des select Feldes ==&lt;br /&gt;
[[File:Mm_translatedselect_datatable.png|thumb|400px]]&lt;br /&gt;
Erst legen wir das MetaModel an.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_dataattribute.png|thumb|400px]]&lt;br /&gt;
[[File:Mm_translatedselect_dataattributes.png|thumb|400px]]&lt;br /&gt;
In diesem erzeugen wir ein &amp;quot;Übersetzter Select&amp;quot; Attribut.&lt;br /&gt;
Wir wählen die Tabelle &amp;quot;tl_metamodel_translatedtext&amp;quot; aus.&lt;br /&gt;
Bei der Bedingung wird &amp;quot;att_id=[Der Wert von oben]&amp;quot; eingetragen.&lt;br /&gt;
Wenn die Sortierung eine Rolle spielt kann die Spalte &amp;quot;sorting&amp;quot; aus der Tabelle aus dem ersten MetaModel benutzt werden.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_data1de.png|thumb|400px]]&lt;br /&gt;
Nach dem Bearbeiten der Eingabemasken und Rendereinstellungen (Wie in den anderen Beispielen) fügen wir ein Datenelement hinzu. Bei der Auswahl erscheinen immer die Einträge aus der BE-Sprache (Hier Deutsch). Das ist unabhängig von der Sprache die wir gerade bearbeiten.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
=Frontend Ansicht=&lt;br /&gt;
[[File:Mm_translatedselect_FEoutput.png|thumb|400px]]&lt;br /&gt;
Wenn wir das zweite MM im Frontend ausgeben lassen, erscheinen nun die Dateneinträge mit dem jeweiligen selektierten Wert in der richtigen FE-Sprache.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/MetaModels_Beispiel:_%C3%9Cbersetzter_select</id>
		<title>MetaModels Beispiel: Übersetzter select</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/MetaModels_Beispiel:_%C3%9Cbersetzter_select"/>
				<updated>2013-05-16T14:06:40Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:MetaModels]]&lt;br /&gt;
&lt;br /&gt;
=Aufgabenstellung: Übersetzter select einrichten=&lt;br /&gt;
Es soll ein &amp;quot;Übersetzter select&amp;quot;-Attribut eingerichtet werden.&lt;br /&gt;
&lt;br /&gt;
===Vorgehensschritte===&lt;br /&gt;
# [[MetaModels|Start: Installation]] - Download und Installation von MetaModels&lt;br /&gt;
# [[MetaModels_Beispiel_1|Beispiel 1: Backend einrichten]] - Eingeben der Sammlung&lt;br /&gt;
# [[MetaModels_Beispiel_2|Beispiel 2: Frontend einrichten]] - Die Inhalte im Frontend anzeigen (Liste und Detail)&lt;br /&gt;
# [[MetaModels_Beispiel_3|Beispiel 3: Weitere Filter einrichten]] – Inhalte auf Published setzen, einfache Select-Filter&lt;br /&gt;
# [[MetaModels_Beispiel_4|Beispiel 4: Weiteres MetaModels einrichten]] - komplexe Select-Filter einsetzen&lt;br /&gt;
# [[MetaModels_Beispiel:_Übersetzter_select|Beispiel 5: Übersetzter select]] - Mehrsprachiges Select-Attribut einrichten&lt;br /&gt;
===Hinweis===&lt;br /&gt;
Es wird von Vorwissen aus den anderen Beispielen ausgegangen!&lt;br /&gt;
&lt;br /&gt;
=Neue MetaModels erstellen=&lt;br /&gt;
[[File:Mm_translatedselect_Ubersicht.png|thumb|400px]]&lt;br /&gt;
Wir legen zwei neue MetaModels an:&lt;br /&gt;
# enthält die übersetzten Einträge für das select Feld (Hier: Mehrsprachige Einträge)&lt;br /&gt;
# zur Anwendung des select Feldes (Hier: Data)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
== MM für die mehrsprachigen Einträge ==&lt;br /&gt;
[[File:Mm_translatedselect_entriestable.png|thumb|400px]]&lt;br /&gt;
Erst legen wir das MetaModel an.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_entriesattribute.png|thumb|400px]]&lt;br /&gt;
In diesem erzeugen wir ein &amp;quot;Übersetzter Text&amp;quot; Attribut.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_entrie1de.png|thumb|200px]]&lt;br /&gt;
[[File:Mm_translatedselect_entrie1en.png|thumb|200px]]&lt;br /&gt;
[[File:Mm_translatedselect_entries.png|thumb|400px]]&lt;br /&gt;
Nach dem Bearbeiten der Eingabemasken und Rendereinstellungen (Wie in den anderen Beispielen) fügen wir die gewünschten Einträge in den gewünschten Sprachen hinzu. &lt;br /&gt;
Hier wurden zwei Einträge in jeweils zwei Sprachen benutzt.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_phpmyadmin.png|thumb|400px]]&lt;br /&gt;
Anschließend gehen wir auf den mysql server und betrachten die Tabelle &amp;quot;tl_metamodel_translatedtext&amp;quot;. Dort suchen wir die gerade erstellten Einträge und merken uns den Wert &amp;quot;att_id&amp;quot;.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
==  MM zur Anwendung des select Feldes ==&lt;br /&gt;
[[File:Mm_translatedselect_datatable.png|thumb|400px]]&lt;br /&gt;
Erst legen wir das MetaModel an.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_dataattribute.png|thumb|400px]]&lt;br /&gt;
[[File:Mm_translatedselect_dataattributes.png|thumb|400px]]&lt;br /&gt;
In diesem erzeugen wir ein &amp;quot;Übersetzter Select&amp;quot; Attribut.&lt;br /&gt;
Wir wählen die Tabelle &amp;quot;tl_metamodel_translatedtext&amp;quot; aus.&lt;br /&gt;
Bei der Bedingung wird &amp;quot;att_id=[Der Wert von oben]&amp;quot; eingetragen.&lt;br /&gt;
Wenn die Sortierung eine Rolle spielt kann die Spalte &amp;quot;sorting&amp;quot; aus der Tabelle aus dem ersten MetaModel benutzt werden.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_data1de.png|thumb|400px]]&lt;br /&gt;
Nach dem Bearbeiten der Eingabemasken und Rendereinstellungen (Wie in den anderen Beispielen) fügen wir ein Datenelement hinzu. Bei der Auswahl erscheinen immer die Einträge aus der BE-Sprache (Hier Deutsch). Das ist unabhängig von der Sprache die wir gerade bearbeiten.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
=Frontend Ansicht=&lt;br /&gt;
[[File:Mm_translatedselect_FEoutput.png|thumb|400px]]&lt;br /&gt;
Wenn wir das zweite MM im Frontend ausgeben lassen, erscheinen nun die Dateneinträge mit dem jeweiligen selektierten Wert in der richtigen FE-Sprache.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/MetaModels_Beispiel:_%C3%9Cbersetzter_select</id>
		<title>MetaModels Beispiel: Übersetzter select</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/MetaModels_Beispiel:_%C3%9Cbersetzter_select"/>
				<updated>2013-05-16T14:03:16Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:MetaModels]]&lt;br /&gt;
&lt;br /&gt;
=Aufgabenstellung: Übersetzter select einrichten=&lt;br /&gt;
Es soll ein &amp;quot;Übersetzter select&amp;quot;-Attribut eingerichtet werden.&lt;br /&gt;
&lt;br /&gt;
===Hinweis===&lt;br /&gt;
Es wird von Vorwissen aus den anderen Beispielen ausgegangen!&lt;br /&gt;
&lt;br /&gt;
=Neue MetaModels erstellen=&lt;br /&gt;
[[File:Mm_translatedselect_Ubersicht.png|thumb|400px]]&lt;br /&gt;
Wir legen zwei neue MetaModels an:&lt;br /&gt;
# enthält die übersetzten Einträge für das select Feld (Hier: Mehrsprachige Einträge)&lt;br /&gt;
# zur Anwendung des select Feldes (Hier: Data)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
== MM für die mehrsprachigen Einträge ==&lt;br /&gt;
[[File:Mm_translatedselect_entriestable.png|thumb|400px]]&lt;br /&gt;
Erst legen wir das MetaModel an.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_entriesattribute.png|thumb|400px]]&lt;br /&gt;
In diesem erzeugen wir ein &amp;quot;Übersetzter Text&amp;quot; Attribut.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_entrie1de.png|thumb|200px]]&lt;br /&gt;
[[File:Mm_translatedselect_entrie1en.png|thumb|200px]]&lt;br /&gt;
[[File:Mm_translatedselect_entries.png|thumb|400px]]&lt;br /&gt;
Nach dem Bearbeiten der Eingabemasken und Rendereinstellungen (Wie in den anderen Beispielen) fügen wir die gewünschten Einträge in den gewünschten Sprachen hinzu. &lt;br /&gt;
Hier wurden zwei Einträge in jeweils zwei Sprachen benutzt.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_phpmyadmin.png|thumb|400px]]&lt;br /&gt;
Anschließend gehen wir auf den mysql server und betrachten die Tabelle &amp;quot;tl_metamodel_translatedtext&amp;quot;. Dort suchen wir die gerade erstellten Einträge und merken uns den Wert &amp;quot;att_id&amp;quot;.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
==  MM zur Anwendung des select Feldes ==&lt;br /&gt;
[[File:Mm_translatedselect_datatable.png|thumb|400px]]&lt;br /&gt;
Erst legen wir das MetaModel an.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_dataattribute.png|thumb|400px]]&lt;br /&gt;
[[File:Mm_translatedselect_dataattributes.png|thumb|400px]]&lt;br /&gt;
In diesem erzeugen wir ein &amp;quot;Übersetzter Select&amp;quot; Attribut.&lt;br /&gt;
Wir wählen die Tabelle &amp;quot;tl_metamodel_translatedtext&amp;quot; aus.&lt;br /&gt;
Bei der Bedingung wird &amp;quot;att_id=[Der Wert von oben]&amp;quot; eingetragen.&lt;br /&gt;
Wenn die Sortierung eine Rolle spielt kann die Spalte &amp;quot;sorting&amp;quot; aus der Tabelle aus dem ersten MetaModel benutzt werden.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
[[File:Mm_translatedselect_data1de.png|thumb|400px]]&lt;br /&gt;
Nach dem Bearbeiten der Eingabemasken und Rendereinstellungen (Wie in den anderen Beispielen) fügen wir ein Datenelement hinzu. Bei der Auswahl erscheinen immer die Einträge aus der BE-Sprache (Hier Deutsch). Das ist unabhängig von der Sprache die wir gerade bearbeiten.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
=Frontend Ansicht=&lt;br /&gt;
[[File:Mm_translatedselect_FEoutput.png|thumb|400px]]&lt;br /&gt;
Wenn wir das zweite MM im Frontend ausgeben lassen, erscheinen nun die Dateneinträge mit dem jeweiligen selektierten Wert in der richtigen FE-Sprache.&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_Ubersicht.png</id>
		<title>Datei:Mm translatedselect Ubersicht.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_Ubersicht.png"/>
				<updated>2013-05-16T13:28:09Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_phpmyadmin.png</id>
		<title>Datei:Mm translatedselect phpmyadmin.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_phpmyadmin.png"/>
				<updated>2013-05-16T13:28:04Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_FEoutput.png</id>
		<title>Datei:Mm translatedselect FEoutput.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_FEoutput.png"/>
				<updated>2013-05-16T13:27:59Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_entriestable.png</id>
		<title>Datei:Mm translatedselect entriestable.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_entriestable.png"/>
				<updated>2013-05-16T13:27:53Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_entriesattributes.png</id>
		<title>Datei:Mm translatedselect entriesattributes.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_entriesattributes.png"/>
				<updated>2013-05-16T13:27:47Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_entriesattribute.png</id>
		<title>Datei:Mm translatedselect entriesattribute.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_entriesattribute.png"/>
				<updated>2013-05-16T13:27:40Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_entries.png</id>
		<title>Datei:Mm translatedselect entries.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_entries.png"/>
				<updated>2013-05-16T13:27:34Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_entrie1en.png</id>
		<title>Datei:Mm translatedselect entrie1en.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_entrie1en.png"/>
				<updated>2013-05-16T13:27:27Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_entrie1de.png</id>
		<title>Datei:Mm translatedselect entrie1de.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_entrie1de.png"/>
				<updated>2013-05-16T13:27:20Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_datatable.png</id>
		<title>Datei:Mm translatedselect datatable.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_datatable.png"/>
				<updated>2013-05-16T13:27:10Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_dataattributes.png</id>
		<title>Datei:Mm translatedselect dataattributes.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_dataattributes.png"/>
				<updated>2013-05-16T13:27:03Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_dataattribute.png</id>
		<title>Datei:Mm translatedselect dataattribute.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_dataattribute.png"/>
				<updated>2013-05-16T13:26:57Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/Datei:Mm_translatedselect_data1de.png</id>
		<title>Datei:Mm translatedselect data1de.png</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/Datei:Mm_translatedselect_data1de.png"/>
				<updated>2013-05-16T13:26:39Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: MetaModels Beispiel: Übersetzter select&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MetaModels Beispiel: Übersetzter select&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	<entry>
		<id>https://de.contaowiki.org/MetaModels_Beispiel:_%C3%9Cbersetzter_select</id>
		<title>MetaModels Beispiel: Übersetzter select</title>
		<link rel="alternate" type="text/html" href="https://de.contaowiki.org/MetaModels_Beispiel:_%C3%9Cbersetzter_select"/>
				<updated>2013-05-16T13:20:39Z</updated>
		
		<summary type="html">&lt;p&gt;Paulpflug: Die Seite wurde neu angelegt: „Category:Admin HOWTOS Category:MetaModels  =Aufgabenstellung: Übersetzter select einrichten= Es soll ein &amp;quot;Übersetzter select&amp;quot;-Attribut eingerichtet werd…“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Admin HOWTOS]]&lt;br /&gt;
[[Category:MetaModels]]&lt;br /&gt;
&lt;br /&gt;
=Aufgabenstellung: Übersetzter select einrichten=&lt;br /&gt;
Es soll ein &amp;quot;Übersetzter select&amp;quot;-Attribut eingerichtet werden.&lt;/div&gt;</summary>
		<author><name>Paulpflug</name></author>	</entry>

	</feed>