use chrono::{DateTime, Utc}; use diesel::{Insertable, Queryable, PgConnection, RunQueryDsl, insert_into}; use serde::{Serialize, Deserialize}; use uuid::Uuid; use crate::schema::schema::gamenight; use super::error::DatabaseError; #[derive(Serialize, Deserialize, Debug, Insertable, Queryable)] #[diesel(table_name = gamenight)] pub struct Gamenight { pub id: Uuid, pub name: String, pub datetime: DateTime, pub owner_id: Uuid, } pub fn gamenights(conn: &mut PgConnection) -> Result, DatabaseError> { Ok(gamenight::table.load::(conn)?) } pub fn add_gamenight(conn: &mut PgConnection, gamenight: Gamenight) -> Result { Ok(insert_into(gamenight::table).values(&gamenight).execute(conn)?) }