Zum Inhalt springen

Datenbank - Teil 2

URL-Struktur für eine Datenbank

Datenbanken existieren innerhalb einer Seite, die Du mit CMS erstellt hast. Auf einzelne Kategorien und Datensätze in der Datenbank wird über die URL dieser Seite zugegriffen. Wenn Du zum Beispiel eine Seite mit der URL https://www.example.de/test hast und diese Seite Deine Datenbank enthält, wird ein Datensatz daraus über die URL https://www.example.de/test/<Kategorie>/<Datensatz> aufgerufen, wobei Kategorie der Name der Kategorie und Datensatz der Name des Datensatzes ist. Deine URLs werden sich auch dynamisch aktualisieren, wenn Du Deine Seite umbenennest oder die Datenbank auf eine andere Seite verschiebst.

Um diesen Ansatz zu erleichtern, kann eine Datenbank jeweils nur auf einer Seite enthalten sein. Sie kann nicht auf anderen Seiten dupliziert werden (obwohl Du Blöcke erstellen kannst, die Daten aus dieser Datenbank enthalten, und diese dann auf anderen Seiten verwenden).

Felder

Für eine fortgeschrittenere Nutzung von Datenbanken sind benutzerdefinierte Daten erforderlich. So können zusätzliche Felder zur Erfassung der Daten eingerichtet werden. Felder werden im AdminCP erstellt, und wenn ein Benutzer einen neuen Datensatz hinzufügt, werden diese Felder auf dem Formular angezeigt. 

Invision Community unterstützt eine breite Palette von Feldtypen, so dass Du Daten eines bestimmten Typs einfach erfassen kannst. Hier sind die unterstützten Typen:

  • Adresse
    Bietet ein spezielles automatisch ausfüllendes Adressfeld, das von Google unterstützt wird
  • Checkbox
    Ein einzelnes Ein/Aus-Kontrollkästchen
  • Checkboxen
    Eine Gruppe von mehreren Ein/Aus-Kontrollkästchen
  • Code
    Bietet eine Möglichkeit den Inhalt mit Syntax-Highlight zu formatieren
  • Datum
    Ein Datumsfeld mit einer Datumsauswahl
  • Editor
    Stellt einen Rich-Text-Editor für die WYSIWYG-Bearbeitung an
  • Datenbankbeziehung
    Ein erweiterter Feldtyp, der die Verknüpfung von Datensätzen aus verschiedenen Datenbanken ermöglicht
  • Benutzer
    Stellt ein automatisch ausfüllendes Suchfeld für Benutzernamen
  • Nummer
    Ein Zahleneingabefeld (bei älteren Browsern wird auf ein einfaches Textfeld zurückgegriffen, jedoch mit Zahlenüberprüfung)
  • Passwort
    Ein Eingabefeld für Kennwörter
  • Radio
    Eine Gruppe von Radiofeldern (d.h. es kann nur eine der Optionen ausgewählt werden)
  • Auswahlfeld
    Ein Drop-Down-Menü mit den bereitgestellten Optionen (kann auf Wunsch auch Mehrfachauswahl ermöglichen)
  • Soundcloud
    Ein Feld in dem Soundcloud eingebettet werden kann
  • Spotify
    Ein Feld zur Einbettung von Spotify
  • Telefonnummer
    Ein Eingabefeld für Telefon (bei älteren Browsern wird auf ein einfaches Textfeld zurückgegriffen)
  • Text (Standard)
    Ein einzeiliges Texteingabefeld
  • Textbereich
    Ein mehrzeiliges Texteingabefeld
  • Upload
    Ein Feld, das Upload von verschiedenen Dateien, z. B. Bildern, Videos usw. ermöglicht (auch mehrfachen Uploads)
  • URL
    Ein URL-Eingabefeld (bei älteren Browsern wird auf ein einfaches Textfeld mit URL-Formatprüfung zurückgegriffen)
  • Ja/Nein
    Ein Umschaltfeld, das Ja- oder Nein-Werte annehmen kann
  • YouTube
    Ein Feld zur Einbettung von YouTube

Viele dieser Feldtypen verfügen über zusätzliche, für sie spezifische Optionen. Beispielsweise haben Auswahlfelder eine Option, die die Auswahl mehrerer Werte erlaubt, während der Upload-Feld Optionen für die Auswahl mehrerer Dateien und eine Möglichkeit zur Einschränkung von Dateitypen bietet.

Feldformatierung

Auf Felder kann eine automatische Formatierung angewendet werden. Für Nicht-Programmierer steht eine Reihe von farbigen Darstellungsoptionen zur Auswahl, und Du hast eine gewisse Kontrolle über die Position, die das Feld in der Listen- oder Datensatzanzeige annimmt. Die Programmier haben jedoch volle Kontrolle über die HTML-Ausgabe für jedes Feld, einschließlich der Verwendung der Template-Logik. Das bedeutet, dass Du die von IPS für jedes Feld gespeicherten Daten auf sehr interessante Weise nutzen kannst. Du kannst beispielsweise den Wert eines Adressfeldes nehmen und ihn zur Ausgabe einer eingebetteten Google-Maps-Karte verwenden oder sogar einige Felder erstellen, die Du nicht ausgibst, sondern stattdessen zur Steuerung des Layouts Deiner Datensatztemplates verwendest.

Berechtigungen

Es gibt mehrere Berechtigungsebenen bei der Arbeit mit Datenbanken:

  • Seitenebene
    Da die Seiten ihre eigenen Berechtigungseinstellungen haben, kann der Benutzer die Datenbank auch nicht sehen, wenn er nicht die Erlaubnis hat, die Seite zu sehen.
  • Datenbankebene
    Die Berechtigungen können auf Datenbankebene festgelegt werden, was auch die Standardberechtigungen für Kategorien in der Datenbank bildet
  • Kategorie-Ebene
    Eine Kategorie kann optional die Berechtigungen der Datenbankebene außer Kraft setzen und ihre eigenen Berechtigungen haben. Dies ist nützlich für versteckte Kategorien - vielleicht nur für Mitarbeiter oder eine Kategorie nur für Premium-Mitglieder.

Verwaltung von Datenbanken

Die Datenbanken werden im AdminCP unter Seiten -> Inhalte -> Datenbanken verwaltet. Du wirst auch feststellen, dass einzelne Datenbanken im Pages Menü im AdminCP für einen schnelleren Zugriff aufgelistet sind. Hier siehst Du einige einfache Informationen über jede Deiner Datenbanken sowie Menüpunkte zur Verwaltung der einzelnen Teile:

Datenbanken

Datenbanken in AdminCP

Datensätze können entweder über AdminCP (klicken auf das Seiten-Icon am Ende der Zeile) oder über das Frontend, hinzugefügt werden. Das bedeutet, dass Benutzer keinen AdminCP-Zugang benötigen, um Datensätze hinzuzufügen bzw. zu bearbeiten.

Erstellen von Datenbanken

Um eine Datenbank zu erstellen, klicke auf die Schaltfläche + Neu erstellen in der Übersicht der Datenbanken (s. Screenshot oben). Es gibt eine Reihe von Konfigurationsoptionen, die Dir zur Verfügung stehen.

Details

Die Grundeinstellungen für diese Datenbank. Unten auf dieser Registerkarte kannst Du die Templates auswählen, die Du für diese Datenbank verwenden möchtest. Wenn Du diese noch nicht erstellt hast, kannst Du es auch später machen.

Sprache

Auf der Registerkarte Sprache legst Du die Wörter fest, die verwendet werden, um auf Datensätze in dieser Datenbank zu verweisen (anstelle der allgemeinen "Datensätze"-Terminologie). Wenn Du z.B. eine Datenbank für Leitfäden erstellen, bedeutet diese Sprachauswahl, dass Invision Community im Kontext auf die Datenbank verweist, z.B. "Leitfäden suchen", "Es gibt 5 Leitfäden in dieser Datenbank" und "Neuen Leitfaden erstellen".

Optionen

Auf dieser Registerkarte kannst Du die Funktionsweise Deine Datenbank genauer steuern, einschließlich Kommentare, Bewertungen, Stichwörter und die Bearbeitung im Wiki-Stil. Hier sind auch Sortieroptionen verfügbar, mit denen Du die Reihenfolge der Datensätze und vor allem das Feld, nach dem sie sortiert werden, auswählen kannst. Wenn Du zum Beispiel eine Datenbank mit Datensätzen über Dinosaurier hast, kannst Du die Datensätze nach Epoche sortieren (ein benutzerdefiniertes Feld, das Du erstellt hast). Du kannst die Einstellung auch im nachhinein bearbeiten, nachdem Du Deine Felder erstellt hast.

Forum

Diese Registerkarte ermöglicht die oben erwähnte Foren-Integration für die Datenbank (einzelne Kategorien können diese Einstellungen auch überschreiben).

Seite

Da eine Datenbank eine Seite benötigt, auf der sie angezeigt wird, kannst Du hier während der Datenbankerstellung eine solche Seite hinzufügen. Alternativ kannst Du sie später zu einer Deinen bestehenden Seiten hinzufügen.

Hinzufügen einer Datenbank zu einer Seite

Wenn Du eine Seite nicht während der Datenbankerstellung hinzufügst, kannst Du es auch manuell tun, indem Du ein spezielles Datenbank-Tag in Deinem Seiteninhalt verwendest. Auf der Registerkarte Details des Datenbankformulars hast Du einen Datenbankschlüssel angegeben. Auf diese Weise wird diese Datenbank in Seiten eingebunden. Wenn der Schlüssel meine-datenbank ist, würdest Du sie so in eine HTML-Seite einfügen:

{datenbank="meine-datenbank"}

Wie oben erwähnt, kann eine Datenbank immer nur auf einer Seite zur gleichen Zeit existieren; der Versuch, diesen Tag auf mehreren Seiten zu verwenden, wird nicht korrekt funktionieren.


  Problem mit Seite melden?

×
×
  • Neu erstellen...

Wichtige Information

Um unsere Webseite für Sie optimal zu gestalten und fortlaufend verbessern zu können, verwenden wir Cookies. Durch die weitere Nutzung der Webseite stimmen Sie der Verwendung von Cookies zu. Weitere Informationen zu Cookies erhalten Sie in unserer Datenschutzerklärung.