103 lines
2.8 KiB
Markdown
103 lines
2.8 KiB
Markdown
# Indexes und Berechtigungen für workorders Collection
|
|
|
|
Diese Anleitung zeigt dir, wie du die Indexes und Berechtigungen für deine `workorders` Collection einrichtest.
|
|
|
|
## Deine Collection-Informationen
|
|
|
|
- **Collection ID**: `6943bf7d001901baa60c`
|
|
- **Database ID**: `6943bf0e0003291f8c35`
|
|
|
|
## Schritt 1: Indexes erstellen
|
|
|
|
Indexes verbessern die Performance beim Filtern und Sortieren. Gehe zu deiner `workorders` Collection im Appwrite Dashboard:
|
|
|
|
1. Öffne dein Appwrite-Projekt
|
|
2. Gehe zu **Databases** → **woms-database** → **workorders**
|
|
3. Klicke auf den Tab **Indexes**
|
|
4. Klicke auf **Create Index**
|
|
|
|
Erstelle folgende Indexes:
|
|
|
|
### Index 1: Status
|
|
- **Key**: `status`
|
|
- **Type**: `key`
|
|
- **Attributes**: `status`
|
|
- **Order**: `ASC` (aufsteigend)
|
|
|
|
### Index 2: Priority
|
|
- **Key**: `priority`
|
|
- **Type**: `key`
|
|
- **Attributes**: `priority`
|
|
- **Order**: `ASC` (aufsteigend)
|
|
|
|
### Index 3: Type
|
|
- **Key**: `type`
|
|
- **Type**: `key`
|
|
- **Attributes**: `type`
|
|
- **Order**: `ASC` (aufsteigend)
|
|
|
|
### Index 4: Customer ID
|
|
- **Key**: `customerId`
|
|
- **Type**: `key`
|
|
- **Attributes**: `customerId`
|
|
- **Order**: `ASC` (aufsteigend)
|
|
|
|
### Index 5: Assigned To
|
|
- **Key**: `assignedTo`
|
|
- **Type**: `key`
|
|
- **Attributes**: `assignedTo`
|
|
- **Order**: `ASC` (aufsteigend)
|
|
|
|
### Index 6: Created At
|
|
- **Key**: `createdAt`
|
|
- **Type**: `key`
|
|
- **Attributes**: `createdAt`
|
|
- **Order**: `DESC` (absteigend)
|
|
|
|
## Schritt 2: Berechtigungen (Permissions) einrichten
|
|
|
|
1. Bleibe in deiner `workorders` Collection
|
|
2. Klicke auf den Tab **Settings**
|
|
3. Scrolle zu **Permissions**
|
|
|
|
### Read (Lesen)
|
|
- Klicke auf **Add Role** unter "Read"
|
|
- Wähle **Any** (wenn alle Tickets sichtbar sein sollen) ODER **Users** (wenn nur eingeloggte Benutzer sehen sollen)
|
|
- **Empfehlung**: `Users` für mehr Sicherheit
|
|
|
|
### Create (Erstellen)
|
|
- Klicke auf **Add Role** unter "Create"
|
|
- Wähle **Users** (nur eingeloggte Benutzer können Tickets erstellen)
|
|
|
|
### Update (Aktualisieren)
|
|
- Klicke auf **Add Role** unter "Update"
|
|
- Wähle **Users** (nur eingeloggte Benutzer können Tickets aktualisieren)
|
|
|
|
### Delete (Löschen)
|
|
- Klicke auf **Add Role** unter "Delete"
|
|
- Wähle **Users** (nur eingeloggte Benutzer können Tickets löschen)
|
|
|
|
## Schritt 3: Überprüfung
|
|
|
|
Nach dem Einrichten solltest du:
|
|
1. ✅ 6 Indexes in der Collection sehen
|
|
2. ✅ 4 Berechtigungen (Read, Create, Update, Delete) konfiguriert haben
|
|
|
|
## Wichtig: Authentication aktivieren
|
|
|
|
Bevor die Berechtigungen funktionieren, musst du Authentication aktivieren:
|
|
|
|
1. Gehe zu **Auth** im linken Menü
|
|
2. Stelle sicher, dass **Email/Password** aktiviert ist
|
|
3. Falls nicht, klicke auf **Create** und aktiviere **Email/Password**
|
|
|
|
## Testen
|
|
|
|
Nach der Einrichtung:
|
|
1. Starte deine App neu: `npm run dev`
|
|
2. Erstelle einen Benutzer oder logge dich ein
|
|
3. Versuche ein Ticket zu erstellen - es sollte funktionieren!
|
|
|
|
Viel Erfolg! 🚀
|
|
|