Añade nueva extensión para dar soporte a bases de datos #12

Merged
manuelcillero merged 29 commits from pagetop-seaorm-support into main 2026-06-11 16:39:46 +02:00

Nueva extensión basada en SeaORM para dar soporte a bases de datos desde PageTop.

Nueva extensión basada en SeaORM para dar soporte a bases de datos desde PageTop.
manuelcillero added 9 commits 2026-05-10 00:45:57 +02:00
manuelcillero added 1 commit 2026-05-10 21:42:24 +02:00
manuelcillero added 2 commits 2026-05-15 00:23:03 +02:00
- `db::*` queda como API de consultas (connection, fetch_*).
- `migration::*` sube a primer nivel con su propia documentación.
- `DBCONN` y `run_now` se trasladan a la raíz de la extensión.
- Actualiza README.md y docs para reflejar la nueva estructura.
manuelcillero added 4 commits 2026-05-31 23:38:58 +02:00
Sustituye el módulo `service` por `web` y adapta toda la API al modelo
de Axum: router inmutable, extractores via `FromRequestParts` y
servicios Tower para archivos estáticos.

- `HttpRequest` pasa a ser un tipo propio, mínimo y clonable.
- `configure_services` pasa a `configure_routes`.
- `EmbeddedFilesService` pasa a `ServeEmbedded`.
- Elimina `session_lifetime` de `Server` (va a `pagetop-auth`).
- Actualiza tests y ejemplos a la nueva API.
Los CSS e imágenes propios de PageTop se sirven bajo `/pagetop/`, por lo
que las referencias a `/css/` e `/img/` deben incluir ese prefijo.
- `configure_service` como `configure_router(Router) -> Router`.
- Macro `static_files_service!` como `serve_static_files!`.
- `ResultPage<M, E>` eliminado; handlers devuelven `Result<M, E>`.
- `ErrorPage` implementa `IntoResponse` en lugar de `ResponseError`.
- Registro con `OnceLock`; eliminados `drop_extensions` y `app.welcome`.
- `Redirect` devuelve `Response`; docs y ejemplos actualizados.
manuelcillero added 1 commit 2026-05-31 23:43:21 +02:00
`#[pagetop::main]` y `#[pagetop::test]` expanden ahora a
`#[tokio::main]` y `#[tokio::test]`, eliminando la dependencia de
Actix-web.
manuelcillero added 2 commits 2026-06-01 02:04:09 +02:00
`ResourceFiles` y `UriSegmentError` quedaron sin uso al migrar de
actix-web a axum/tower.
- Sustituye `service::test::*` por `web::test::*` (migración de actix-web a
  axum).
- Extrae `setup()` en los módulos que sólo renderizan componentes,
  evitando levantar un router completo en cada test.
- Elimina los `env::set_var("PAGETOP_RUN_MODE", "test")` manuales, ya
  cubiertos por la *feature* `testing`.
manuelcillero added 2 commits 2026-06-01 22:02:34 +02:00
Clarifica la distinción entre un fichero estático individual
(`StaticFile`) y el contenedor de varios ficheros (`StaticResources`).
manuelcillero added 1 commit 2026-06-01 22:06:00 +02:00
manuelcillero added 1 commit 2026-06-01 23:32:36 +02:00
`///` debe preceder a `#[derive(...)]` al ser azúcar de `#[doc = "..."]`.
manuelcillero added 1 commit 2026-06-02 00:24:53 +02:00
manuelcillero added 2 commits 2026-06-09 19:25:00 +02:00
- Reescribe la documentación con ejemplos completos, guía rápida y
  tablas de referencia.
- Renombra `connection()` a `dbconn()`.
- Añade `execute()` para SQL en crudo y corrige `fetch_all`/`fetch_one`
  para aceptar `&Q` en lugar de `&mut Q`.
- Cambia `futures::executor::block_on` por `tokio::task::block_in_place`
  para compatibilidad con el *runtime* multi-hilo.
- Los fallos de migración al arrancar provocan `panic!` en lugar de log
  de error silencioso.
- Actualiza `#[pagetop::test]` para usar `flavor = "multi_thread"`,
  alineándolo con `#[pagetop::main]` y con las extensiones que usan
  SeaORM.
manuelcillero added 3 commits 2026-06-11 07:18:13 +02:00
Introduce `Attribute::Splice` en el AST de Maud, de modo que `(expr)` en
posición de atributo renderiza la expresión directamente sobre el buffer
de salida del elemento.
Elimina `ClassesOp::Replace` (sustituible con `Remove`+`Add`), renombra
`Set` a `Reset` por claridad semántica, añade `Classes::is_empty()` y
mejora documentación de `ClassesOp` con nota sobre orden CSS.
manuelcillero changed title from WIP: Añade nueva extensión para dar soporte a bases de datos to Añade nueva extensión para dar soporte a bases de datos 2026-06-11 16:35:31 +02:00
manuelcillero merged commit 0121fad94a into main 2026-06-11 16:39:46 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: manuelcillero/pagetop#12
No description provided.