use diesel::{dsl::insert_into, Insertable, PgConnection, Queryable, RunQueryDsl}; use serde::{Serialize, Deserialize}; use uuid::Uuid; use crate::schema::game; use super::error::DatabaseError; #[derive(Serialize, Deserialize, Debug, Insertable, Queryable)] #[diesel(table_name = game)] pub struct Game { pub id: Uuid, pub name: String, } pub fn games(conn: &mut PgConnection) -> Result, DatabaseError> { Ok(game::table.load::(conn)?) } pub fn insert_game(conn: &mut PgConnection, game: Game) -> Result { Ok(insert_into(game::table).values(&game).execute(conn)?) }