DokuDateibasiert
Dateibasiertes Routing
Eine Route ist eine Datei. Die URL ist der Dateipfad relativ zu src/routes/, abzüglich der Erweiterung.
Datei zur URL
| Datei | URL |
|---|---|
index.nexy |
/ |
about.nexy |
/about |
blog/index.nexy |
/blog |
blog/[slug].nexy |
/blog/{slug} |
docs/[...path].nexy |
/docs/{path:path} |
(marketing)/pricing.nexy |
/pricing |
api/users.py |
/api/users |
index wird seinem Verzeichnis zugeordnet, nicht /index. Ein Verzeichnis in Klammern ist eine Gruppe: Es organisiert Dateien, ohne in der URL zu erscheinen.
Im Client-Modus sind die Auslagerungsdateien .tsx, .vue oder .svelte anstelle von .nexy; Die URL-Regeln sind dieselben.
Zwei Dateien dieser Tabelle: eine Seite, die ihr Segment liest, und ein Handler, der JSON antwortet.
slug: prop[str]<h1>{{ slug }}</h1>async def GET(): return {"users": []}Zwei Modi
useCSR entscheidet, was die Seiten sind. Die beiden können nicht in einem Projekt gemischt werden: Nexy weigert sich zu starten, wenn eine Serverseite neben einer Client-Route liegt.
| Modus | Seiten | Root-Layout | Siehe |
|---|---|---|---|
Server (useCSR = False) |
.nexy, .md, .mdx |
layout.nexy |
Servermodus und Clientmodus |
Kunde (useCSR = True) |
Framework-Dateien | layout.tsx |
layout.tsx |
.py-Dateien sind in beiden Modi API-Handler.
Der Schalter ist eine Zeile von nexyconfig.py:
from nexy.core.models import NexyConfigModelfrom nexy.frontend import react class NexyConfig(NexyConfigModel): useFF = react() useCSR = True # client mode: src/routes/*.tsx are the pagesWas ist keine Route?
- Reservierte Dateinamen:
layout.*,loading.nexy,errors.nexy,notfound.nexy,dependencies.py,middleware.py,__init__.py. - Dateien und Ordner, die mit
_oder.beginnen: Verwenden Sie sie für Teilaufnahmen und Entwürfe. - Erweiterungen, die für Ihr Projekt nicht aktiv sind. Eine Datei, deren Erweiterung inaktiv ist, wird mit einer Warnung übersprungen.
Eine Datei pro URL
Zwei Dateien, die zur gleichen URL aufgelöst werden, werden beide registriert. Erstellen Sie nicht blog.nexy neben blog/index.nexy und mischen Sie nicht index.nexy und index.py für denselben Pfad. Wählen Sie eine aus.
In diesem Abschnitt
| Ordner | Was es abdeckt |
|---|---|
| Seiten/ | Seiten, dynamische Routen, Routengruppen |
| Layouts/ | eine Seite pro Layoutdateityp |
| Handler/ | .py Handler, Validierung und Fehler |
| Abhängigkeiten/ | dependencies.py, Wachen |
| Middleware/ | middleware.py |
| Fehler/ | Nicht gefundene Seiten und Fehlerseiten |
| Navigation/ | Glieder, Haken |
| Echtzeit/ | WebSocket |
| Vererbung | die Vererbungsregeln in einer Tabelle |