10 điểm bởi dbsrbals26 2025-12-10 | Chưa có bình luận nào. | Chia sẻ qua WhatsApp

Trong quá trình triển khai CRUD dựa trên ORM, mã truy vấn lặp đi lặp lại cứ liên tục chồng chất.
Ngay trong đội ngũ của chúng tôi, boilerplate với các mẫu tương tự cũng ngày càng tăng theo từng model,
và thật khó để tìm được một thư viện có thể đồng thời đáp ứng kiểu viết SQLAlchemy v2, tính an toàn kiểu và cả ánh xạ schema của Pydantic v2.

Vì vậy, nhân dịp này chúng tôi đã tổng hợp một lớp Repository đơn giản thành thư viện
nhằm giảm bớt boilerplate CRUD của SQLAlchemy.

  • Dựa trên generic, chỉ cần chỉ định Model và Schema là CRUD sẽ được cung cấp tự động
  • Chúng tôi cũng cấu hình overload để mypy có thể suy luận chính xác kiểu kết quả
  • Khi cần, chỉ cần thay Mapper là có thể áp dụng nhiều chiến lược schema khác nhau.

Trong đội ngũ của chúng tôi, nhờ đó lượng mã CRUD của SQLAlchemy đã giảm đi khá nhiều.
Nếu bạn cũng đang gặp vấn đề tương tự thì hãy tham khảo thử,
và nếu có cảm nhận gì trong quá trình sử dụng, chúng tôi sẽ tích cực phản ánh vào thư viện.

Liên kết: https://github.com/4jades/base-repository

Chưa có bình luận nào.

Chưa có bình luận nào.