Wigandt Technology

Open-Source-Projekt: Directus Polymorphic Reference

Directus Interface- und Display-Bundle für polymorphe Referenzen: Collection und ID werden im Formular auswählbar und in Listen lesbar.

Status

Aktiv gepflegt

Plattform

Directus Extension

Technologie

Vue

Projektüberblick

Worum es geht

Directus Polymorphic Reference bildet flexible Beziehungen ab, bei denen ein Datensatz über eine Ziel-Collection und eine Ziel-ID auf unterschiedliche Entitätstypen verweisen kann. Das Muster ähnelt polymorphen Relationen aus Frameworks wie Laravel und wird in Directus über ein Interface- und Display-Bundle nutzbar.

Details

Technischer Ansatz

Die Extension trennt die Ziel-Collection und die Ziel-ID in zwei Felder, verbindet sie aber in der Oberfläche wieder zu einer verständlichen Referenz. Redakteure wählen zuerst den Entitätstyp und danach den passenden Datensatz.

Details

Architektur & Einsatz

Mein Beitrag ist das Bundle mit Collection-Auswahl, Referenz-Interface und Display. Templates liefern lesbare Labels; im Detailformular führt ein Link zum Zieldatensatz, das Listen-Display zeigt den Text.

Details

Projektkontext

Der Anwendungsfall dahinter sind Datenmodelle, in denen ein Eintrag auf mehrere unterschiedliche Typen zeigen kann: eine Aktivität, die zu einem Kontakt, einer Firma oder einem Angebot gehört, oder ein Kommentar an beliebigen Objekten. Ohne polymorphe Referenz braucht so etwas entweder eine Spalte je Zieltyp oder eine Zwischentabelle pro Kombination.

Details

Einblick 4

Der Preis dieser Flexibilität ist eine fehlende Fremdschlüsselprüfung: Die Datenbank kann nicht garantieren, dass die hinterlegte ID im Zielsystem existiert. Deshalb ist das Muster für Verknüpfungen gedacht, deren Verlust verkraftbar ist, und nicht für Beziehungen, an denen Abrechnung oder Bestandsführung hängen.

Dokumentierter Entwicklungsstand

Paketversion 1.5.1 laut Repository, geprüft am . Directus ^11.0.0 || ^12.0.0

Der angegebene Host-Bereich stammt aus dem Paketmanifest und ersetzt keinen Test der konkreten Installation.

Paketmanifest im Repository prüfen

Lizenz: MIT.

Funktionsumfang

Was die Extension abdeckt

Collection-Select-Interface für das Typ-Feld einer polymorphen Referenz

Polymorphic-Reference-Interface für die Auswahl des passenden Ziel-Datensatzes

Interface mit Link zum Zieldatensatz und Listen-Display mit lesbarem Label

Templatebasierte Labels pro Ziel-Collection für lesbare Listenansichten

Ablauf

Einrichtung und Nutzung

  1. 1

    Ein Feld für den Zieltyp als Collection Select konfigurieren.

  2. 2

    Ein Feld für die Ziel-ID als Polymorphic Reference konfigurieren.

  3. 3

    Optional Templates und Link-Verhalten pro Collection festlegen.

Einblicke

Abbildungen aus der Projektdokumentation

Datenmodell einer polymorphen Directus-Referenz
Datenmodell mit Typ-Feld und Ziel-ID.
Einrichtungsablauf der Polymorphic Reference Extension
Ablauf für Collection-Auswahl, Referenzfeld und Darstellung.
Feldzustände der Directus Polymorphic Reference
Feldzustände für Auswahl, Anzeige und leere Referenzen.

Repository & Paket

Quellcode ansehen

DirectusRelationsnpm

Individuelle Entwicklung

Eigene Extension geplant?

Wenn eine Directus- oder Shopware-Erweiterung als Grundlage passt oder ein ähnliches Projekt ansteht, können Sie direkt eine Anfrage senden.

Zum Kontaktformular