MetaModels: Unterschied zwischen den Versionen
Aus Contao Community Documentation
Luis (Diskussion | Beiträge) (→Vorwort: Wiki-Dokumentation der Erweiterung MetaModels (Nachfolger des Catalog)) |
Zonky (Diskussion | Beiträge) K (Hinweis Handbuch) |
||
(73 dazwischenliegende Versionen von 7 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | {{ | + | {{Hinweis|Die Angaben, Beschreibungen und Screenshot beziehen sich auf MetaModels bis etwa Mitte 2016 und sind nicht aktuell! |
+ | Im [http://metamodels.readthedocs.io/de/latest/ MetaModels-Handbuch] sind aktuelle Angaben zu finden.}} | ||
+ | |||
[[Category:Extensions]] | [[Category:Extensions]] | ||
− | [[Category:MetaModels]] | + | [[Category:MetaModels|B]] |
{{ExtInfo | {{ExtInfo | ||
| Dev=Metamodels Team | | Dev=Metamodels Team | ||
Zeile 17: | Zeile 19: | ||
===Vorgehensschritte=== | ===Vorgehensschritte=== | ||
# [[MetaModels|Start: Installation]] - Download und Installation von MetaModels | # [[MetaModels|Start: Installation]] - Download und Installation von MetaModels | ||
− | # [[MetaModels_Beispiel_1|Beispiel 1: Backend einrichten]] - | + | # [[MetaModels_Beispiel_1|Beispiel 1: Backend einrichten]] - MetaModel erstellen, Daten erfassen |
# [[MetaModels_Beispiel_2|Beispiel 2: Frontend einrichten]] - Die Inhalte im Frontend anzeigen (Liste und Detail) | # [[MetaModels_Beispiel_2|Beispiel 2: Frontend einrichten]] - Die Inhalte im Frontend anzeigen (Liste und Detail) | ||
# [[MetaModels_Beispiel_3|Beispiel 3: Weitere Filter einrichten]] – Inhalte auf Published setzen, einfache Select-Filter | # [[MetaModels_Beispiel_3|Beispiel 3: Weitere Filter einrichten]] – Inhalte auf Published setzen, einfache Select-Filter | ||
# [[MetaModels_Beispiel_4|Beispiel 4: Weiteres MetaModels einrichten]] - komplexe Select-Filter einsetzen | # [[MetaModels_Beispiel_4|Beispiel 4: Weiteres MetaModels einrichten]] - komplexe Select-Filter einsetzen | ||
− | =Download= | + | =Download & Installation= |
==Download von der Demosite== | ==Download von der Demosite== | ||
Zeile 29: | Zeile 31: | ||
<div style="clear: both"><br><br></div> | <div style="clear: both"><br><br></div> | ||
− | == | + | ==Installation via Composer== |
− | + | MetaModels kann vollständig über [http://de.contaowiki.org/Composer Composer] installiert werden. Alle Attribute liegen auf [https://packagist.org/ Packagist] und werden vom offiziellen MetaModels Team betreut. Für die Installation von MetaModels über Composer muss man lediglich nach "metamodels" suchen, alle verfügbaren Pakete werden danach aufgelistet. | |
− | == | + | ==Download aus dem Entwicklungsrepository GitHub== |
+ | |||
+ | [[Datei:logo-github.png|link=|left|105px]] | ||
Zu finden ist die Erweiterung MetaModels auf GitHub: | Zu finden ist die Erweiterung MetaModels auf GitHub: | ||
[https://github.com/MetaModels github.com/Metamodels]<br> | [https://github.com/MetaModels github.com/Metamodels]<br> | ||
− | Aktuell | + | Aktuell können das Core, dazu abhängige weitere Erweiterungen und alle weiteren MetaModels Attribute/Filter manuell installiert werden. |
+ | <div style="clear: both"><br></div> | ||
+ | |||
+ | ===Core=== | ||
+ | * [https://github.com/MetaModels/core MetaModels (Das Core-Modul)] | ||
+ | * [https://github.com/MetaModels/boilerplate Boilerplate (Erzeugt einen separaten Bereich in der Backend-Navigation)] | ||
===Abhängigkeiten=== | ===Abhängigkeiten=== | ||
Benötigt werden folgende Erweiterungen: | Benötigt werden folgende Erweiterungen: | ||
− | |||
− | |||
* [https://github.com/MetaModels DC_General] | * [https://github.com/MetaModels DC_General] | ||
* [https://contao.org/de/extension-list/view/MetaPalettes.html MetaPalettes] | * [https://contao.org/de/extension-list/view/MetaPalettes.html MetaPalettes] | ||
− | * [http://www.contao.org/erweiterungsliste/view/MultiColumnWizard.html MultiColumnWizard] | + | * [http://www.contao.org/erweiterungsliste/view/MultiColumnWizard.html MultiColumnWizard] |
* [https://github.com/Discordier/justtextwidgets justtextwidgets] | * [https://github.com/Discordier/justtextwidgets justtextwidgets] | ||
+ | * [https://contao.org/de/extension-list/view/geoprotection.de.html geoprotection] (wird nur für das Attribut '''Geoprotection''' benötigt) | ||
===Verfügbare Attribute und Filter=== | ===Verfügbare Attribute und Filter=== | ||
− | + | Sobald der Core und alle benötigten sonstigen Erweiterungen installiert sind, werden die weiteren Attributs- und Filterextensions des MetaModels benötigt. | |
− | Sobald der Core und benötigten sonstigen Erweiterungen installiert sind, | + | |
Dazu gehören: | Dazu gehören: | ||
{| style="width:100%" | {| style="width:100%" | ||
Zeile 57: | Zeile 64: | ||
| | | | ||
* [https://github.com/MetaModels/attribute_alias Attribut: Alias] | * [https://github.com/MetaModels/attribute_alias Attribut: Alias] | ||
− | * [https://github.com/MetaModels/attribute_checkbox Attribut: Checkbox] | + | * [https://github.com/MetaModels/attribute_checkbox Attribut: Checkbox (Kontrollkästchen)] |
− | * [https://github.com/MetaModels/attribute_decimal Attribut: Decimal] | + | * [https://github.com/MetaModels/attribute_combinedvalues Attribut: Combined Values (Kombinierte Einträge)] |
− | * [https://github.com/MetaModels/attribute_file Attribut: File] | + | * [https://github.com/MetaModels/attribute_color Attribut: Color (Farbe)] |
+ | * [https://github.com/MetaModels/attribute_country Attribut: Country (Land)] | ||
+ | * [https://github.com/MetaModels/attribute_decimal Attribut: Decimal (Dezimal)] | ||
+ | * [https://github.com/MetaModels/attribute_file Attribut: File (Datei)] | ||
* [https://github.com/MetaModels/attribute_geoprotection Attribut: Geoprotection (Länderzuordnung)] | * [https://github.com/MetaModels/attribute_geoprotection Attribut: Geoprotection (Länderzuordnung)] | ||
− | * [https://github.com/MetaModels/attribute_langcode Attribut: Langcode ( | + | * [https://github.com/MetaModels/attribute_langcode Attribut: Langcode (Sprachschlüssel)] |
− | * [https://github.com/MetaModels/attribute_longtext Attribut: Longtext] | + | * [https://github.com/MetaModels/attribute_longtext Attribut: Longtext (Langtext, Textarea)] |
− | * [https://github.com/MetaModels/attribute_select Attribut: Select] | + | * [https://github.com/MetaModels/attribute_select Attribut: Select (Auswahl)] |
− | * [https://github.com/MetaModels/attribute_numeric Attribut: Numeric] | + | * [https://github.com/MetaModels/attribute_numeric Attribut: Numeric (Numerisch)] |
− | * [https://github.com/MetaModels/attribute_tags Attribut: Tags] | + | * [https://github.com/MetaModels/attribute_rating Attribut: Rating (Bewertung)] |
+ | * [https://github.com/MetaModels/attribute_tags Attribut: Tags (Mehrfachauswahl)] | ||
* [https://github.com/MetaModels/attribute_text Attribut: Text] | * [https://github.com/MetaModels/attribute_text Attribut: Text] | ||
+ | * [https://github.com/MetaModels/attribute_timestamp Attribut: Timestamp (Datum)] | ||
+ | * [https://github.com/MetaModels/attribute_url Attribut: URL] | ||
| | | | ||
* [https://github.com/MetaModels/attribute_translatedalias Attribut: Translated Alias] | * [https://github.com/MetaModels/attribute_translatedalias Attribut: Translated Alias] | ||
Zeile 83: | Zeile 96: | ||
|} | |} | ||
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. | 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. | ||
+ | {{Hinweis|Das Attribut [https://packagist.org/packages/metamodels/attribute_geoprotection '''Geoprotection'''] ist nicht mehr Teil der Nightly Builds. Es kann aber jederzeit über den oben angegeben Link separat geladen werden.}}{{Hinweis|Das Attribut [https://packagist.org/packages/metamodels/attribute_rating '''Rating'''] benötigt die Extension [https://packagist.org/packages/leounglaub/contao-simple-ajax '''SimpleAjax'''] von leo-unglaub. Das Rating Attribut wird seit einiger Zeit nicht mehr in der Nightly ausgeliefert.}} | ||
− | == | + | ==Download via git und Kommandozeile== |
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. | 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. | ||
Zeile 127: | Zeile 141: | ||
=Installation= | =Installation= | ||
− | Die zu installieren Dateien müssen zur Installation im Contao-System wie folgt hochgeladen werden: | + | Die zu installieren Ordner und Dateien müssen zur Installation im Contao-System wie folgt hochgeladen werden: |
{| style="width:80%" | {| style="width:80%" | ||
|- | |- | ||
Zeile 136: | Zeile 150: | ||
* justtextwidgets | * justtextwidgets | ||
* metamodels | * metamodels | ||
+ | * metamodels_boilerplate | ||
* metamodelsattribute_alias | * metamodelsattribute_alias | ||
* metamodelsattribute_checkbox | * metamodelsattribute_checkbox | ||
+ | * metamodelsattribute_combinedvalues | ||
+ | * metamodelsattribute_color | ||
+ | * metamodelsattribute_country | ||
* metamodelsattribute_decimal | * metamodelsattribute_decimal | ||
* metamodelsattribute_file | * metamodelsattribute_file | ||
Zeile 144: | Zeile 162: | ||
* metamodelsattribute_longtext | * metamodelsattribute_longtext | ||
* metamodelsattribute_numeric | * metamodelsattribute_numeric | ||
+ | * metamodelsattribute_rating | ||
* metamodelsattribute_select | * metamodelsattribute_select | ||
* metamodelsattribute_tags | * metamodelsattribute_tags | ||
* metamodelsattribute_text | * metamodelsattribute_text | ||
+ | * metamodelsattribute_timestamp | ||
* metamodelsattribute_translatedalias | * metamodelsattribute_translatedalias | ||
* metamodelsattribute_translatedfile | * metamodelsattribute_translatedfile | ||
Zeile 153: | Zeile 173: | ||
* metamodelsattribute_translatedtags | * metamodelsattribute_translatedtags | ||
* metamodelsattribute_translatedtext | * metamodelsattribute_translatedtext | ||
+ | * metamodelsattribute_url | ||
* metamodelsfilter_checkbox | * metamodelsfilter_checkbox | ||
* metamodelsfilter_fromto | * metamodelsfilter_fromto | ||
Zeile 169: | Zeile 190: | ||
===Leeres MetaModel=== | ===Leeres MetaModel=== | ||
− | [[Datei:MetaModels_Backend_System.png | + | [[Datei:MetaModels_Backend_System.png|right|600px]] |
− | Nach Aktualisierung der Datenbank erscheint MetaModels neu als eigenständige Einstellung | + | Nach Aktualisierung der Datenbank erscheint '''MetaModels''' neu als eigenständige Einstellung in der Backend-Navigation links. |
<div style="clear: both"></div> | <div style="clear: both"></div> | ||
===Erweiterungsverwaltung=== | ===Erweiterungsverwaltung=== | ||
− | [[Datei:MetaModels_Backend_System_ER.png | + | [[Datei:MetaModels_Backend_System_ER.png|right|600px]] |
− | In der Erweiterungsverwaltung | + | In der Erweiterungsverwaltung findet sich hingegen nichts, was auf MetaModels hinweist. Aber das ist gut so (Stand Mai 2013). |
<div style="clear: both"></div> | <div style="clear: both"></div> | ||
===MetaModel mit null Datensätzen=== | ===MetaModel mit null Datensätzen=== | ||
− | [[Datei:MetaModels_Backend_System_Beispiel.png | + | [[Datei:MetaModels_Backend_System_Beispiel.png|right|600px]] |
− | Nachdem | + | Nachdem ein erstes neues MetaModel erstellt wurde, erscheint folgende Darstellung: |
− | Weiterführende Informationen zu | + | Weiterführende Informationen zu einem einfachen Praxisbeispiel findet man unter [[MetaModels_Beispielprojekt|MetaModels Beispielprojekt]] |
<div style="clear: both"></div> | <div style="clear: both"></div> | ||
Zeile 187: | Zeile 208: | ||
===Dokumentation der Attribute=== | ===Dokumentation der Attribute=== | ||
− | Den Überblick findest du [[MetaModels_Backend: | + | [[File:icons_attribute.png|left|link=|32px]] |
+ | Zur [[MetaModels_Backend:_Attribute|Dokumentation der Attribute]]. | ||
+ | |||
+ | ===Dokumentation der Ausgabevorgaben=== | ||
+ | [[File:icons_ausgabevorgaben.png|left|link=|32px]] | ||
+ | Den Überblick findest du [[MetaModels_Backend:_Ausgabevorgaben|hier]]. | ||
+ | |||
+ | ===Dokumentation der Eingabemaske (fka Paletteneinstellungen)=== | ||
+ | [[File:icons_paletteneinstellungen.png|left|link=|32px]] | ||
+ | Den Überblick findest du [[MetaModels_Backend:_Eingabemaske|hier]]. | ||
===Dokumentation der Filter=== | ===Dokumentation der Filter=== | ||
− | + | [[File:icons_filter.png|left|link=|32px]] | |
+ | Zum [[MetaModels_Backend:_Filter|Überblick über die Filter]]. | ||
+ | |||
+ | ===Dokumentation der Ansichtseinstellungen=== | ||
+ | [[File:icons_ansichtseinstellungen.png|left|link=|32px]] | ||
+ | Zum [[MetaModels_Backend:_Ansichtseinstellungen|Überblick der Ansichtseinstellungen]]. | ||
+ | |||
+ | =Basics= | ||
+ | Einführende Beispiele, wie man MetaModels einrichten und konfigurieren kann, findet man hier: | ||
+ | # [[MetaModels_Beispiel_1| Backend einrichten]] - am Beispiel einer Musiksammlung, Eingeben der Sammlung | ||
+ | # [[MetaModels_Beispiel_2| Frontend einrichten]] - Die Inhalte im Frontend anzeigen (Liste und Detail) | ||
+ | # [[MetaModels_Beispiel_3| Weitere Filter einrichten]] – Inhalte auf Published setzen, einfache Select-Filter | ||
+ | # [[MetaModels_Beispiel_4| Weiteres MetaModels einrichten]] - komplexe Select-Filter einsetzen | ||
+ | # [[MetaModels Insert-Tags| Insert-Tags]] - Insert-Tags in MetaModels | ||
− | = | + | =Tipps und Tricks= |
− | + | Umsetzung-Beispiele, wie man MetaModels ausbauen kann, findet man hier: | |
− | # [[ | + | # [[MetaModels_Beispiel:_Übersetzter_select| Übersetzer select]] - "Übersetzter select"-Attribut eingerichtet werden. |
− | # [[ | + | # [[MetaModels_Beispiel:_Referenced_items| Referenced items]] - MetaModels miteinder verknüpfen |
− | # [[ | + | # [[MetaModels_Beispiel:_FE-Template_anpassen| FE-Template anpassen]] - FE-Template anpassen |
− | + | ||
=Frontendausgabe= | =Frontendausgabe= | ||
{{Hinweis|Die Dokumentation sollte in eine andere Seite ausgelagert werden}} | {{Hinweis|Die Dokumentation sollte in eine andere Seite ausgelagert werden}} | ||
---- | ---- | ||
− | started by: [[Benutzer:Planepix|Planepix]] 00:49, 28. Nov. 2012 (CET) | + | started by: [[Benutzer:Planepix|Planepix]] 00:49, 28. Nov. 2012 (CET)<br> |
+ | completed by [[Benutzer:Luis|Luis]], [[Benutzer:lucina|Lucina]] |
Aktuelle Version vom 26. Januar 2017, 15:13 Uhr
![]() |
Hinweis: Die Angaben, Beschreibungen und Screenshot beziehen sich auf MetaModels bis etwa Mitte 2016 und sind nicht aktuell!
Im MetaModels-Handbuch sind aktuelle Angaben zu finden. |
Erweiterungs-Übersicht | |
---|---|
Name des Entwicklers | Metamodels Team |
Kompatibilität mit Contao Version | ab 2.11.X |
Link zum Tracker | https://github.com/MetaModels/core/issues |
Link zum VCS | https://github.com/MetaModels/core |
Abhängig von ff. Erweiterungen | DC_General Justtextwidgets MultiColumnWizard MetaPalettes |
Inhaltsverzeichnis
Vorwort: Wiki-Dokumentation der Erweiterung MetaModels (Nachfolger des Catalog)
Die Erweiterung MetaModels ist der Nachfolger der Catalog-Extension. Der Code wurde komplett neu entwickelt. Eine Kompatibilität zum Catalog besteht nicht.
Vorgehensschritte
- Start: Installation - Download und Installation von MetaModels
- Beispiel 1: Backend einrichten - MetaModel erstellen, Daten erfassen
- Beispiel 2: Frontend einrichten - Die Inhalte im Frontend anzeigen (Liste und Detail)
- Beispiel 3: Weitere Filter einrichten – Inhalte auf Published setzen, einfache Select-Filter
- Beispiel 4: Weiteres MetaModels einrichten - komplexe Select-Filter einsetzen
Download & Installation
Download von der Demosite
![Logo-metamodels.png](/images/de/thumb/b/b4/Logo-metamodels.png/105px-Logo-metamodels.png)
Unter der URL 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.
Installation via Composer
MetaModels kann vollständig über Composer installiert werden. Alle Attribute liegen auf Packagist und werden vom offiziellen MetaModels Team betreut. Für die Installation von MetaModels über Composer muss man lediglich nach "metamodels" suchen, alle verfügbaren Pakete werden danach aufgelistet.
Download aus dem Entwicklungsrepository GitHub
![Logo-github.png](/images/de/thumb/a/a7/Logo-github.png/105px-Logo-github.png)
Zu finden ist die Erweiterung MetaModels auf GitHub:
github.com/Metamodels
Aktuell können das Core, dazu abhängige weitere Erweiterungen und alle weiteren MetaModels Attribute/Filter manuell installiert werden.
Core
Abhängigkeiten
Benötigt werden folgende Erweiterungen:
- DC_General
- MetaPalettes
- MultiColumnWizard
- justtextwidgets
- geoprotection (wird nur für das Attribut Geoprotection benötigt)
Verfügbare Attribute und Filter
Sobald der Core und alle benötigten sonstigen Erweiterungen installiert sind, werden die weiteren Attributs- und Filterextensions des MetaModels benötigt. Dazu gehören:
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.
![]() |
Hinweis: Das Attribut Geoprotection ist nicht mehr Teil der Nightly Builds. Es kann aber jederzeit über den oben angegeben Link separat geladen werden. |
![]() |
Hinweis: Das Attribut Rating benötigt die Extension SimpleAjax von leo-unglaub. Das Rating Attribut wird seit einiger Zeit nicht mehr in der Nightly ausgeliefert. |
Download via git und Kommandozeile
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.
Linux | MacOS |
---|---|
In Benutzerverzeichnis wechseln und für den Pull ein Verzeichniss anlegen. cd ~ mkdir MetaModels cd MetaModels |
In Benutzerverzeichnis wechseln und für den Pull ein Verzeichniss anlegen. cd ~ mkdir MetaModels cd MetaModels |
Alle MetaModel Repos holen for i in `wget -qO- https://api.github.com/orgs/MetaModels/repos | \ grep clone_url | \ cut -d \" -f4`; do \ git clone $i; \ done; |
Alle MetaModel Repos holen for i in `curl https://api.github.com/orgs/MetaModels/repos | \ grep clone_url | \ cut -d \" -f4`; do \ git clone $i; \ done; |
Installation
Die zu installieren Ordner und Dateien müssen zur Installation im Contao-System wie folgt hochgeladen werden:
Module (/system/modules) | Drivers (/system/drivers) |
---|---|
|
|
Danach muss mittels des Installtools ein Update der Datenbank gemacht werden.
Backend Ansichten
Leeres MetaModel
Nach Aktualisierung der Datenbank erscheint MetaModels neu als eigenständige Einstellung in der Backend-Navigation links.
Erweiterungsverwaltung
In der Erweiterungsverwaltung findet sich hingegen nichts, was auf MetaModels hinweist. Aber das ist gut so (Stand Mai 2013).
MetaModel mit null Datensätzen
Nachdem ein erstes neues MetaModel erstellt wurde, erscheint folgende Darstellung: Weiterführende Informationen zu einem einfachen Praxisbeispiel findet man unter MetaModels Beispielprojekt
Konfiguration
Dokumentation der Attribute
![Icons attribute.png](/images/de/5/5d/Icons_attribute.png)
Zur Dokumentation der Attribute.
Dokumentation der Ausgabevorgaben
![Icons ausgabevorgaben.png](/images/de/8/88/Icons_ausgabevorgaben.png)
Den Überblick findest du hier.
Dokumentation der Eingabemaske (fka Paletteneinstellungen)
![Icons paletteneinstellungen.png](/images/de/1/1e/Icons_paletteneinstellungen.png)
Den Überblick findest du hier.
Dokumentation der Filter
![Icons filter.png](/images/de/c/c0/Icons_filter.png)
Zum Überblick über die Filter.
Dokumentation der Ansichtseinstellungen
![Icons ansichtseinstellungen.png](/images/de/6/68/Icons_ansichtseinstellungen.png)
Zum Überblick der Ansichtseinstellungen.
Basics
Einführende Beispiele, wie man MetaModels einrichten und konfigurieren kann, findet man hier:
- Backend einrichten - am Beispiel einer Musiksammlung, Eingeben der Sammlung
- Frontend einrichten - Die Inhalte im Frontend anzeigen (Liste und Detail)
- Weitere Filter einrichten – Inhalte auf Published setzen, einfache Select-Filter
- Weiteres MetaModels einrichten - komplexe Select-Filter einsetzen
- Insert-Tags - Insert-Tags in MetaModels
Tipps und Tricks
Umsetzung-Beispiele, wie man MetaModels ausbauen kann, findet man hier:
- Übersetzer select - "Übersetzter select"-Attribut eingerichtet werden.
- Referenced items - MetaModels miteinder verknüpfen
- FE-Template anpassen - FE-Template anpassen
Frontendausgabe
started by: Planepix 00:49, 28. Nov. 2012 (CET)
completed by Luis, Lucina