diff --git a/examples/rocket_example/src/sqlx/mod.rs b/examples/rocket_example/src/sqlx/mod.rs index fe089ba4..c74244c2 100644 --- a/examples/rocket_example/src/sqlx/mod.rs +++ b/examples/rocket_example/src/sqlx/mod.rs @@ -73,14 +73,18 @@ async fn read(mut con: Connection, id: i64) -> Option> { } } -// #[delete("/")] -// async fn delete(mut db: Connection, id: i64) -> Result> { -// let result = sqlx::query!("DELETE FROM posts WHERE id = ?", id) -// .execute(&mut *db) -// .await?; +#[delete("/")] +async fn delete(mut conn: Connection, id: i64) -> Result> { + let post: post::ActiveModel = Post::find_by_id(id) + .one(&conn) + .await + .unwrap() + .unwrap() + .into(); + let result = post.delete(&conn).await.unwrap(); -// Ok((result.rows_affected() == 1).then(|| ())) -// } + Ok((result.rows_affected == 1).then(|| ())) +} // #[delete("/")] // async fn destroy(mut db: Connection) -> Result<()> { @@ -203,7 +207,7 @@ pub fn stage() -> AdHoc { // None => Err(rocket), // } })) - .mount("/sqlx", routes![list, read]) + .mount("/sqlx", routes![list, read, delete]) }) }