Delete many

This commit is contained in:
Chris Tsang 2021-06-28 01:35:21 +08:00
parent 9f93c7ed6f
commit 7e3bc1c7b3

View File

@ -1,7 +1,7 @@
use crate::{ use crate::{
ActiveModelTrait, ColumnTrait, Delete, DeleteOne, FromQueryResult, Insert, ModelTrait, ActiveModelTrait, ColumnTrait, Delete, DeleteMany, DeleteOne, FromQueryResult, Insert,
PrimaryKeyToColumn, PrimaryKeyTrait, QueryFilter, Related, RelationBuilder, RelationTrait, ModelTrait, PrimaryKeyToColumn, PrimaryKeyTrait, QueryFilter, Related, RelationBuilder,
RelationType, Select, Update, UpdateMany, UpdateOne, RelationTrait, RelationType, Select, Update, UpdateMany, UpdateOne,
}; };
use sea_query::{Iden, IntoValueTuple}; use sea_query::{Iden, IntoValueTuple};
use std::fmt::Debug; use std::fmt::Debug;
@ -234,7 +234,7 @@ pub trait EntityTrait: EntityName {
/// # use sea_orm::{MockDatabase, Transaction}; /// # use sea_orm::{MockDatabase, Transaction};
/// # let db = MockDatabase::new().into_connection(); /// # let db = MockDatabase::new().into_connection();
/// # /// #
/// use sea_orm::{entity::*, query::*, tests_cfg::{cake, fruit}, sea_query::{Expr, Value}}; /// use sea_orm::{entity::*, query::*, tests_cfg::fruit, sea_query::{Expr, Value}};
/// ///
/// # async_std::task::block_on(async { /// # async_std::task::block_on(async {
/// fruit::Entity::update_many() /// fruit::Entity::update_many()
@ -282,4 +282,28 @@ pub trait EntityTrait: EntityName {
{ {
Delete::one(model) Delete::one(model)
} }
/// ```
/// # #[cfg(feature = "mock")]
/// # use sea_orm::{MockDatabase, Transaction};
/// # let db = MockDatabase::new().into_connection();
/// #
/// use sea_orm::{entity::*, query::*, tests_cfg::fruit};
///
/// # async_std::task::block_on(async {
/// fruit::Entity::delete_many()
/// .filter(fruit::Column::Name.contains("Apple"))
/// .exec(&db)
/// .await;
/// # });
///
/// assert_eq!(
/// db.into_transaction_log(),
/// vec![Transaction::from_sql_and_values(
/// r#"DELETE FROM "fruit" WHERE "fruit"."name" LIKE $1"#, vec!["%Apple%".into()]
/// )]);
/// ```
fn delete_many() -> DeleteMany<Self> {
Delete::many(Self::default())
}
} }