DocsBaseado em arquivo
Roteamento baseado em arquivo
Uma rota é um arquivo. A URL é o caminho do arquivo relativo a src/routes/, menos a extensão.
Arquivo para URL
| Arquivo | 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 mapeia para seu diretório, não para /index. Um diretório entre parênteses é um grupo: ele organiza arquivos sem aparecer na URL.
No modo cliente, os arquivos de página são .tsx, .vue ou .svelte em vez de .nexy; as regras de URL são as mesmas.
Dois arquivos dessa tabela: uma página que lê seu segmento e um manipulador que responde JSON.
slug: prop[str]<h1>{{ slug }}</h1>async def GET(): return {"users": []}Dois modos
useCSR decide quais são as páginas. Os dois não podem ser misturados em um projeto: Nexy se recusa a iniciar quando uma página do servidor fica próxima a uma rota do cliente.
| Modo | Páginas | Layout raiz | Veja |
|---|---|---|---|
Servidor (useCSR = False) |
.nexy, .md, .mdx |
layout.nexy |
Modo servidor e modo cliente |
Cliente (useCSR = True) |
arquivos de estrutura | layout.tsx |
layout.tsx |
.py arquivos são manipuladores de API em ambos os modos.
A opção é uma linha de 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 pagesO que não é uma rota
- Nomes de arquivos reservados:
layout.*,loading.nexy,errors.nexy,notfound.nexy,dependencies.py,middleware.py,__init__.py. - Arquivos e pastas começando com
_ou.: use-os para parciais e rascunhos. - Extensões que não estão ativas para o seu projeto. Um arquivo cuja extensão está inativa é ignorado com um aviso.
Um arquivo por URL
Dois arquivos que resolvem para o mesmo URL são registrados. Não crie blog.nexy próximo a blog/index.nexy e não misture index.nexy e index.py para o mesmo caminho. Escolha um.
Nesta seção
| Pasta | O que cobre |
|---|---|
| páginas/ | páginas, rotas dinâmicas, grupos de rotas |
| layouts/ | uma página por tipo de arquivo de layout |
| manipuladores/ | .py manipuladores, validação e erros |
| dependências/ | dependencies.py, guardas |
| intermediário/ | middleware.py |
| erros/ | páginas não encontradas e de erro |
| navegação/ | links, ganchos |
| tempo real/ | WebSocket |
| herança | as regras de herança em uma tabela |