diff options
Diffstat (limited to 'src/database/posts.rs')
-rw-r--r-- | src/database/posts.rs | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/src/database/posts.rs b/src/database/posts.rs index 6ee5e0f..7892683 100644 --- a/src/database/posts.rs +++ b/src/database/posts.rs @@ -48,7 +48,10 @@ pub fn get_post(post_id: u64) -> Result<Option<Post>, rusqlite::Error> { tracing::trace!("Retrieving post"); let conn = database::connect()?; let mut stmt = conn.prepare("SELECT * FROM posts WHERE post_id = ?")?; - let row = stmt.query_row([post_id], |row| Ok(post_from_row(row)?)).optional()?; + let row = stmt.query_row([post_id], |row| { + let row = post_from_row(row)?; + Ok(row) + }).optional()?; Ok(row) } @@ -58,7 +61,10 @@ pub fn get_post_page(page: u64) -> Result<Vec<Post>, rusqlite::Error> { let page_size = 10; let conn = database::connect()?; let mut stmt = conn.prepare("SELECT * FROM posts ORDER BY post_id DESC LIMIT ? OFFSET ?")?; - let row = stmt.query_map([page_size, page_size * page], |row| Ok(post_from_row(row)?))?; + let row = stmt.query_map([page_size, page_size * page], |row| { + let row = post_from_row(row)?; + Ok(row) + })?; Ok(row.into_iter().flatten().collect()) } @@ -67,7 +73,10 @@ pub fn get_users_posts(user_id: u64) -> Result<Vec<Post>, rusqlite::Error> { tracing::trace!("Retrieving users posts"); let conn = database::connect()?; let mut stmt = conn.prepare("SELECT * FROM posts WHERE user_id = ? ORDER BY post_id DESC")?; - let row = stmt.query_map([user_id], |row| Ok(post_from_row(row)?))?; + let row = stmt.query_map([user_id], |row| { + let row = post_from_row(row)?; + Ok(row) + })?; Ok(row.into_iter().flatten().collect()) } @@ -85,7 +94,10 @@ pub fn add_post(user_id: u64, content: &str) -> Result<Post, rusqlite::Error> { let date = SystemTime::now().duration_since(UNIX_EPOCH).unwrap().as_millis() as u64; let conn = database::connect()?; let mut stmt = conn.prepare("INSERT INTO posts (user_id, content, likes, comments, date) VALUES(?,?,?,?,?) RETURNING *;")?; - let post = stmt.query_row((user_id, content, likes_json, comments_json, date), |row| Ok(post_from_row(row)?))?; + let post = stmt.query_row((user_id, content, likes_json, comments_json, date), |row| { + let row = post_from_row(row)?; + Ok(row) + })?; Ok(post) } |