golangでTodoアプリの作成。
//code generatorを備えているためCLIツールを取ってくる
go get entgo.io/ent/cmd/ent
//MySQLドライバ
go get github.com/go-sql-driver/mysql
//スキーマの初期化
go run entgo.io/ent/cmd/ent init User Todo
//もろもろファイル生成
go generate ./ent
//マイグレーション実行確認
docker-compose exec db mysql -u docker -pdocker todo-app
//testcontainers
go get github.com/testcontainers/testcontainers-go
//testify(テスティングフレームワーク)
go get github.com/stretchr/testify
//gomock
go install github.com/golang/mock/[email protected]
//mock作成
mockgen -source=./domain/service/user/userservice.go -destination=./mock/domain/service/user/user.go
//import認識しなかったら
go mod tidy
erDiagram
User ||--o{ Todo : ""
User {
int id
varchar name
varchar email
int age
}
Todo {
int id
int user_id
varchar title
varchar detail
DateTime created_at
DateTime updated_at
DateTime completed_at
}