Closed9
RustでAxumを使って、DDD / Clean Architectureで実装する

ヘルスチェックとTodoのIDでのGETまで実装してみた。

Todoテーブルに完了フラグと完了日を追加した。
完了日だけでも問題ないかな?と思ったけど、SQLxでbool型も扱ってみたかったので両方追加にしてみた。

/v1/todos/
ですべてのTodoを取得できるようにした!
あとで、パスパラメータで検索できるようにしたい。

TodoをPOSTできるようにした!
バリデーション、難しい。
required は、Option のみで使えるっぽい。
だから、途中でバリデーション後という前提で unwrap がいるのがちょっと気になる...

is_completed を status_id に変更しようと思う。

todo の状態を status で管理できるようにした。
todo の update は patch にしたので、null のときは更新しないSQLにする必要がある。
もっとスマートに書けないものか...

null のときは更新しないSQL
axum の examples だと、先にIDでレコード取得して、
null でないカラムの値を置き換えてから update って実装になっている。
たしかにスマートかも。

PostgreSQL の UPSERT を使ってみた

Axum Router
での nest
このスクラップは2023/04/22にクローズされました
ログインするとコメントできます