feat(db): add SQLx migrations and AppState with connection pool
- Add sqlx 0.8 (AnyPool, runtime-tokio, sqlite, postgres, migrate) - Create 6 migration files for both SQLite and PostgreSQL backends - Add server/db.rs: create_pool and run_migrations helpers - Add server/state.rs: AppState with LeptosOptions + AnyPool - Run migrations at server startup before accepting requests - Fix Port model: remove host_id (ports are now a global catalog) - Add HostPort join struct for the host_ports many-to-many table Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
7
migrations/sqlite/0005_create_host_ports.sql
Normal file
7
migrations/sqlite/0005_create_host_ports.sql
Normal file
@@ -0,0 +1,7 @@
|
||||
-- host_ports: which ports are open on which host (many-to-many).
|
||||
-- Composite primary key prevents duplicate (host, port) pairs.
|
||||
CREATE TABLE IF NOT EXISTS host_ports (
|
||||
host_id INTEGER NOT NULL REFERENCES hosts(id) ON DELETE CASCADE,
|
||||
port_number INTEGER NOT NULL REFERENCES ports(number) ON DELETE CASCADE,
|
||||
PRIMARY KEY (host_id, port_number)
|
||||
);
|
||||
Reference in New Issue
Block a user