@@ -7,25 +7,19 @@ SQLAlchemy CRUD Plus 提供完整的 CRUD(创建、读取、更新、删除)
77### 单条记录
88
99``` python
10- # 基础创建
11- user_data = {" name" : " 张三" , " email" : " zhangsan@example.com" }
12- user = await user_crud.create_model(session, user_data)
13-
14- # 使用 Pydantic 模型
10+ # 使用 Pydantic 模型创建
1511user_data = UserCreate(name = " 张三" , email = " zhangsan@example.com" )
1612user = await user_crud.create_model(session, user_data)
17-
18-
1913```
2014
2115### 批量创建
2216
2317``` python
2418# 批量创建多条记录
2519users_data = [
26- { " name" : " 用户1" , " email" : " user1@example.com" } ,
27- { " name" : " 用户2" , " email" : " user2@example.com" } ,
28- { " name" : " 用户3" , " email" : " user3@example.com" }
20+ UserCreate( name = " 用户1" , email = " user1@example.com" ) ,
21+ UserCreate( name = " 用户2" , email = " user2@example.com" ) ,
22+ UserCreate( name = " 用户3" , email = " user3@example.com" )
2923]
3024users = await user_crud.create_models(session, users_data)
3125```
@@ -123,18 +117,18 @@ exists = await user_crud.exists(session, email="test@example.com")
123117### 主键更新
124118
125119``` python
126- # 根据主键更新
127- updated_user = await user_crud.update_model(session, pk = 1 , obj_in = {" name" : " 新名称" })
120+ # 使用字典更新
121+ updated_count = await user_crud.update_model(session, pk = 1 , obj = {" name" : " 新名称" })
128122
129123# 使用 Pydantic 模型
130124user_update = UserUpdate(name = " 新名称" , email = " new@example.com" )
131- updated_user = await user_crud.update_model(session, pk = 1 , obj_in = user_update)
125+ updated_count = await user_crud.update_model(session, pk = 1 , obj = user_update)
132126
133127# 使用 whereclause 位置参数(额外条件)
134- updated_user = await user_crud.update_model(
128+ updated_count = await user_crud.update_model(
135129 session,
136130 pk = 1 ,
137- obj_in = {" name" : " 新名称" },
131+ obj = {" name" : " 新名称" },
138132 user_crud.model.is_active == True
139133)
140134```
@@ -143,16 +137,16 @@ updated_user = await user_crud.update_model(
143137
144138``` python
145139# 根据条件更新单条记录
146- updated_user = await user_crud.update_model_by_column(
140+ updated_count = await user_crud.update_model_by_column(
147141 session,
148- obj_in = {" is_active" : False },
142+ obj = {" is_active" : False },
149143 email = " user@example.com"
150144)
151145
152146# 使用 whereclause 位置参数(额外条件)
153- updated_user = await user_crud.update_model_by_column(
147+ updated_count = await user_crud.update_model_by_column(
154148 session,
155- obj_in = {" name" : " 新名称" },
149+ obj = {" name" : " 新名称" },
156150 user_crud.model.is_active == True ,
157151 email = " user@example.com"
158152)
0 commit comments