Create user
This commit is contained in:
parent
b4935873fe
commit
880ff11bb4
12
.sqlx/query-120b948148309b9e3eeb964f89f098163ceceaf8b1f2c76d81fab2811c362a63.json
generated
Normal file
12
.sqlx/query-120b948148309b9e3eeb964f89f098163ceceaf8b1f2c76d81fab2811c362a63.json
generated
Normal file
@ -0,0 +1,12 @@
|
||||
{
|
||||
"db_name": "SQLite",
|
||||
"query": "\n INSERT INTO users (id, username, email, display_name, created_at)\n VALUES (?1, ?2, ?3, ?4, ?5)\n ",
|
||||
"describe": {
|
||||
"columns": [],
|
||||
"parameters": {
|
||||
"Right": 5
|
||||
},
|
||||
"nullable": []
|
||||
},
|
||||
"hash": "120b948148309b9e3eeb964f89f098163ceceaf8b1f2c76d81fab2811c362a63"
|
||||
}
|
@ -1,5 +1,2 @@
|
||||
[default.databases.rss_data]
|
||||
url = "sqlite:data.sqlite"
|
||||
|
||||
# This option is only supported by the `sqlx_sqlite` driver.
|
||||
extensions = ["memvfs", "rot13"]
|
||||
|
39
src/main.rs
39
src/main.rs
@ -62,37 +62,30 @@ fn index() -> Template {
|
||||
Template::render("index", context! {})
|
||||
}
|
||||
|
||||
#[post("/users", data = "<user>")]
|
||||
async fn create_user(mut db: Connection<Db>, user: Json<NewUser>) -> Result<Json<User>, Status> {
|
||||
let new_user = User::new(
|
||||
user.username.clone(),
|
||||
user.email.clone(),
|
||||
user.display_name.clone(),
|
||||
);
|
||||
|
||||
/*
|
||||
match sqlx::query!(
|
||||
r#"
|
||||
INSERT INTO users (id, username, email, display_name, created_at)
|
||||
VALUES (?1, ?2, ?3, ?4, ?5)
|
||||
"#,
|
||||
new_user.id.to_string(),
|
||||
#[post("/users", data = "<new_user>")]
|
||||
async fn create_user(mut db: Connection<Db>, new_user: Json<NewUser>) -> Result<Json<User>, Status> {
|
||||
let new_user = new_user.into_inner();
|
||||
let user = User::new(
|
||||
new_user.username,
|
||||
new_user.email,
|
||||
new_user.display_name,
|
||||
new_user.created_at.to_rfc3339()
|
||||
)
|
||||
.execute(&mut *db)
|
||||
.await
|
||||
{
|
||||
Ok(_) => Ok(Json(new_user)),
|
||||
);
|
||||
|
||||
let query = sqlx::query("INSERT INTO users (id, username, email, display_name, created_at) VALUES (?1, ?2, ?3, ?4, ?5)")
|
||||
.bind(user.id.to_string())
|
||||
.bind(user.username.as_str())
|
||||
.bind(user.email.as_ref())
|
||||
.bind(user.display_name.as_ref())
|
||||
.bind(user.created_at.to_rfc3339())
|
||||
.execute(&mut **db).await;
|
||||
|
||||
match query {
|
||||
Ok(_) => Ok(Json(user)),
|
||||
Err(e) => {
|
||||
eprintln!("Database error: {}", e);
|
||||
Err(Status::InternalServerError)
|
||||
}
|
||||
}
|
||||
*/
|
||||
todo!()
|
||||
}
|
||||
|
||||
#[launch]
|
||||
|
Loading…
Reference in New Issue
Block a user