Rust in Everything
基于 sea-orm 2.0.4

导读

开始读源码之前,先把两件事讲清楚:

  1. 怎么读这一卷:为什么是 sea-orm 2.0.4、sea-query 1.0.2、sqlx 0.9.0,和本站用的 1.1.20 差在哪;sea-orm → sea-query → sqlx 三层各管什么;查询、写入、定义三条主线每一步落在哪个函数、哪一页讲;阅读路线、前置知识;build、sqlx 日志、debug-print、MockDatabase 四种看 SQL 的办法各看到什么。
  2. 源码地图:sea-orm、sea-orm-macros、sea-query、sea-query-sqlx、sea-orm-migration、sea-orm-cli、sea-orm-codegen、sea-schema 各管什么、谁依赖谁;src/ 每个目录回答的问题和行数;默认集里没有驱动的 feature 体系;sea-orm-sync 怎么由 make-sync.sh 从异步源码生成,重跑一遍和发布的逐字节相同。
flowchart TB
  read[怎么读这一卷] --> ver["版本 1.1.20 到 2.0.4"]
  read --> layers["三层 sea-orm sea-query sqlx"]
  read --> lines[三条主线]
  read --> see["四种看 SQL 的办法"]
  map[源码地图] --> crates[各个 crate]
  map --> dirs["src 的目录"]
  map --> feat[feature 体系]
  map --> sync["sea-orm-sync 的生成"]

💬 关联讨论

发起讨论
加载中...