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]
|
[default.databases.rss_data]
|
||||||
url = "sqlite:data.sqlite"
|
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! {})
|
Template::render("index", context! {})
|
||||||
}
|
}
|
||||||
|
|
||||||
#[post("/users", data = "<user>")]
|
#[post("/users", data = "<new_user>")]
|
||||||
async fn create_user(mut db: Connection<Db>, user: Json<NewUser>) -> Result<Json<User>, Status> {
|
async fn create_user(mut db: Connection<Db>, new_user: Json<NewUser>) -> Result<Json<User>, Status> {
|
||||||
let new_user = User::new(
|
let new_user = new_user.into_inner();
|
||||||
user.username.clone(),
|
let user = User::new(
|
||||||
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(),
|
|
||||||
new_user.username,
|
new_user.username,
|
||||||
new_user.email,
|
new_user.email,
|
||||||
new_user.display_name,
|
new_user.display_name,
|
||||||
new_user.created_at.to_rfc3339()
|
);
|
||||||
)
|
|
||||||
.execute(&mut *db)
|
let query = sqlx::query("INSERT INTO users (id, username, email, display_name, created_at) VALUES (?1, ?2, ?3, ?4, ?5)")
|
||||||
.await
|
.bind(user.id.to_string())
|
||||||
{
|
.bind(user.username.as_str())
|
||||||
Ok(_) => Ok(Json(new_user)),
|
.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) => {
|
Err(e) => {
|
||||||
eprintln!("Database error: {}", e);
|
eprintln!("Database error: {}", e);
|
||||||
Err(Status::InternalServerError)
|
Err(Status::InternalServerError)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
todo!()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#[launch]
|
#[launch]
|
||||||
|
Loading…
Reference in New Issue
Block a user