- 添加基础crate结构(erp-core, erp-common) - 实现核心模块trait和事件总线 - 配置Docker开发环境(PostgreSQL+Redis) - 添加Tauri桌面端基础框架 - 设置CI/CD工作流 - 编写项目协作规范文档(CLAUDE.md)
17 lines
570 B
Rust
17 lines
570 B
Rust
use sea_orm::{ConnectOptions, Database, DatabaseConnection};
|
|
use std::time::Duration;
|
|
|
|
use crate::config::DatabaseConfig;
|
|
|
|
pub async fn connect(config: &DatabaseConfig) -> anyhow::Result<DatabaseConnection> {
|
|
let mut opt = ConnectOptions::new(&config.url);
|
|
opt.max_connections(config.max_connections)
|
|
.min_connections(config.min_connections)
|
|
.connect_timeout(Duration::from_secs(10))
|
|
.idle_timeout(Duration::from_secs(600));
|
|
|
|
let db = Database::connect(opt).await?;
|
|
tracing::info!("Database connected successfully");
|
|
Ok(db)
|
|
}
|