fix: simple ORM for one struct and foreign references work

Currently, all methods declared in the Georm trait are available.

If a struct has an ID pointing towards another entity, the user can
create a get method to get the entity pointed at from the database
too (local one-to-one relationship).

I still need to implement remote one-to-one relationships (one-to-one
relationships when the ID of the remote object is not available
locally).

I still need to also test and debug one-to-many relationships (ID of
the remote entiies not available locally) and many-to-many
relationships (declared in a dedicated table).

For now, IDs in all cases are simple types recognized by SQLx that are
not arrays. Options are only supported when explicitely specified for
one-to-one relationships.
This commit is contained in:
2025-01-31 21:58:36 +01:00
parent 96ac2aa979
commit bca0619f30
19 changed files with 511 additions and 107 deletions

View File

@@ -2,17 +2,11 @@ mod docker
default: lint
format:
cargo fmt --all
clean:
cargo clean
format-check:
cargo fmt --check --all
build:
cargo build
build-release:
cargo build --release
test:
cargo test --all-targets --all
lint:
cargo clippy --all-targets
@@ -20,18 +14,19 @@ lint:
audit:
cargo deny check all
test:
cargo test --all-targets --all
build:
cargo build
coverage:
mkdir -p coverage
cargo tarpaulin --config .tarpaulin.local.toml
build-release:
cargo build --release
coverage-ci:
mkdir -p coverage
cargo tarpaulin --config .tarpaulin.ci.toml
format:
cargo fmt --all
check-all: format-check lint coverage audit
format-check:
cargo fmt --check --all
check-all: format-check lint audit test
## Local Variables:
## mode: makefile