Skip to content

Latest commit

 

History

History
35 lines (30 loc) · 1.46 KB

readme.md

File metadata and controls

35 lines (30 loc) · 1.46 KB

ov

compared to Luke's implementation in details

  • macro error setup
  • less test setup boilerplate
    • macro_rules
    • [sqlx::test]
  • a mix use of sea-orm and sqlx
    • why sqlx with sea-orm? -> psql's create type is not fully supported in sea-orm
  • serde_aux is not needed since config-rs support deserialization of unsigned integers since 0.13.2

run

migration

  • sea_orm's migration must be run under the project dir
# run a new migration
DATABASE_URL=<url> sea-orm-cli migrate

# update ORM struct def
sea-orm-cli generate entity -u <url> -o /path/to/dir  --ignore-tables idempotency,seaql_migrations

# rollback
DATABASE_URL=<url> sea-orm-cli migrate down
  • you may want to refer sea-query when writing migrations
    • raw sql is not compatible across databases

test

  • you need to setup a redis and a psql first; execute scripts/init_redis.sh and scripts/init_db.sh first
  • remember to shut down global VPN/HTTP_PROXY when running mockwire test
  • to show tracing during test, use TEST_LOG=1 cargo test -- -nocapture