Datenimport & -export
Überblick
Abschnitt betitelt „Überblick“Rebase enthält integrierte Datenimport- und -exportwerkzeuge, die direkt über das Admin-Panel zugänglich sind. Der Import unterstützt CSV-, JSON- und Excel-Dateien mit einem Spalten-Mapping-Assistenten. Der Export unterstützt CSV und JSON mit optionalen berechneten Feldern.
Beide Funktionen sind standardmäßig auf allen Collections aktiviert und können pro Collection konfiguriert oder deaktiviert werden.
Daten importieren
Abschnitt betitelt „Daten importieren“Wie man importiert
Abschnitt betitelt „Wie man importiert“- Öffnen Sie eine Collection im Admin-Panel
- Klicken Sie auf die Schaltfläche Importieren in der Toolbar
- Wählen Sie Ihre Datei aus oder ziehen Sie sie per Drag & Drop
- Ordnen Sie die Dateispalten den Collection-Properties zu
- Sehen Sie sich die Daten in der Vorschau an und beheben Sie etwaige Validierungsfehler
- Klicken Sie auf Importieren, um alle Entitäten zu speichern
Unterstützte Formate
Abschnitt betitelt „Unterstützte Formate“| Format | Erweiterungen | Hinweise |
|---|---|---|
| CSV | .csv |
Erkennt Trennzeichen automatisch |
| JSON | .json |
Erwartet ein Array von Objekten |
| Excel | .xlsx |
Liest das erste Blatt |
Spalten-Mapping
Abschnitt betitelt „Spalten-Mapping“Der Import-Assistent versucht automatisch, die Dateispalten anhand des Namens den Collection-Properties zuzuordnen. Sie können die Zuordnungen vor dem Import manuell anpassen:
- Exakte Übereinstimmungen werden automatisch zugeordnet (z. B.
name→name) - Nicht zugeordnete Spalten können manuell zugeordnet oder übersprungen werden
- Typ-Konvertierung übernimmt String-zu-Zahl, String-zu-Boolean und das Parsen von Datumsangaben
Validierung
Abschnitt betitelt „Validierung“Vor dem Import validiert der Assistent alle Zeilen gegen die Property-Definitionen Ihrer Collection:
- Pflichtfelder müssen vorhanden sein
- Enum-Werte müssen den definierten Optionen entsprechen
- Datentypen müssen kompatibel sein (z. B. wird ein Textwert für ein Zahlenfeld markiert)
- Validierungsfehler werden pro Zeile angezeigt, sodass Sie sie vor dem Import beheben können
Import-Konfiguration
Abschnitt betitelt „Import-Konfiguration“Der Import ist standardmäßig aktiviert. Um ihn für eine bestimmte Collection zu deaktivieren, verwenden Sie das Unterobjekt admin:
import { defineCollection } from "@rebasepro/admin-types";
const productsCollection = defineCollection({ slug: "products", table: "products", name: "Products", properties: { /* ... */ }, // Import is enabled by default});Daten exportieren
Abschnitt betitelt „Daten exportieren“Wie man exportiert
Abschnitt betitelt „Wie man exportiert“- Öffnen Sie eine Collection im Admin-Panel
- Wenden Sie optional Filter an, um eine Teilmenge der Daten zu exportieren
- Klicken Sie auf die Schaltfläche Exportieren in der Toolbar
- Wählen Sie das Format: CSV oder JSON
- Die Datei wird sofort heruntergeladen
Exportformate
Abschnitt betitelt „Exportformate“| Format | Beschreibung |
|---|---|
| CSV | Kommagetrennte Werte, kompatibel mit Excel und Google Sheets |
| JSON | Array von Objekten, nützlich für die programmatische Verarbeitung |
Filtern vor dem Export
Abschnitt betitelt „Filtern vor dem Export“Alle aktiven Filter in der Collection-Ansicht werden auf den Export angewendet. So können Sie nur eine Teilmenge Ihrer Daten exportieren:
- Wenden Sie Spaltenfilter oder Suchbegriffe in der Collection-Ansicht an
- Klicken Sie auf Exportieren — nur die gefilterten Zeilen werden einbezogen
Export-Konfiguration
Abschnitt betitelt „Export-Konfiguration“Der Export ist standardmäßig aktiviert. Sie können ihn mit zusätzlichen berechneten Feldern konfigurieren:
import { defineCollection } from "@rebasepro/admin-types";
const productsCollection = defineCollection({ slug: "products", table: "products", name: "Products", properties: { /* ... */ }, admin: { exportable: true // Enable (default: true) }});Um den Export zu deaktivieren:
import { defineCollection } from "@rebasepro/admin-types";const productsCollection = defineCollection({ slug: "products", table: "products", name: "Products", properties: { /* ... */ }, admin: { exportable: false }});Berechnete Felder hinzufügen
Abschnitt betitelt „Berechnete Felder hinzufügen“Verwenden Sie das ExportConfig-Objekt, um Ihren Exporten benutzerdefinierte berechnete Spalten hinzuzufügen. Diese Spalten existieren nicht in der Datenbank — sie werden zur Exportzeit berechnet:
import { defineCollection } from "@rebasepro/admin-types";
const productsCollection = defineCollection({ slug: "products", table: "products", name: "Products", properties: { /* ... */ }, admin: { exportable: { additionalFields: [ { key: "computed_margin", builder: ({ entity }) => { const price = entity.values.price as number; const cost = entity.values.cost as number; return String(price - cost); } }, { key: "full_url", builder: ({ entity }) => { return `https://mystore.com/products/${entity.id}`; } } ] } }});Jeder additionalFields-Eintrag hat:
| Property | Typ | Beschreibung |
|---|---|---|
key |
string |
Spaltenname im Export |
builder |
({ entity, context }) => string | Promise<string> |
Funktion, die den Wert berechnet |
Die builder-Funktion erhält die aktuelle entity und den RebaseContext (der den authentifizierten Benutzer enthält), sodass Sie Werte sowohl auf Basis der Daten als auch der Berechtigungen berechnen können.
Asynchrone berechnete Felder
Abschnitt betitelt „Asynchrone berechnete Felder“Die builder-Funktion kann asynchron sein, was nützlich ist, wenn der berechnete Wert eine Datenbankabfrage oder einen API-Aufruf erfordert:
exportable: { additionalFields: [ { key: "author_name", builder: async ({ entity, context }) => { const author = await context.data.users.findById( entity.values.author_id as string ); return author?.values.displayName ?? "Unknown"; } } ]}Nächste Schritte
Abschnitt betitelt „Nächste Schritte“- Collections — Definieren Sie Ihr Datenmodell
- Frontend-Überblick — Admin-Panel und UI-Komponenten
- Client-SDK — Programmatischer Datenzugriff
