프로젝트 소개
SeaORM은 Rust를 위해 설계된 기능이 풍부한 객체 관계 매퍼(ORM)입니다. 1-1, 1-N, M-N 및 자기 참조 관계를 포함한 복잡한 관계를 모델링할 수 있는 고수준의 개념적 방법을 제공합니다.
주요 기능은 다음과 같습니다:
- Smart Entity Loader: 1-1 관계에는 조인을, 1-N 관계에는 데이터 로더를 지능적으로 사용하여 N+1 쿼리 문제를 해결합니다.
- ActiveModel: 중첩 지속성을 지원하여 단일 작업으로 전체 객체 그래프를 저장할 수 있습니다.
- 유연한 워크플로우: 마이그레이션 시스템을 통한 스키마 우선(schema-first) 방식과 엔티티 정의를 기반으로 데이터베이스 스키마를 자동 동기화하는 엔티티 우선(entity-first) 방식을 모두 지원합니다.
- Raw SQL 지원: SQL 인젝션을 방지하면서 파라미터 보간 및 배열 확장을 제공하는 복잡한 쿼리용 `raw_sql!` 매크로를 포함합니다.
- 동기 지원: `sea-orm-sync`를 통해 비동기 런타임 없이 API를 사용할 수 있어 가벼운 CLI 도구에 유용합니다.
- 통합: Actix, Axum, Poem, Rocket, Salvo를 포함한 다양한 Rust 웹 프레임워크에 대한 예제를 제공합니다.
또한, 생태계에는 GraphQL API를 빠르게 구축할 수 있는 Seaography와 전문적인 관리자 패널을 위한 SeaORM Pro가 포함되어 있습니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.