Initial implementation of db stuffs

Got the migrations and datastructures in. Next step is building db
utility function into the db module or client module
This commit is contained in:
2026-05-18 14:54:57 -07:00
parent 907c6a8fb0
commit c92ee309a9
21 changed files with 262 additions and 1 deletions
+58
View File
@@ -0,0 +1,58 @@
// @generated automatically by Diesel CLI.
pub mod sql_types {
#[derive(diesel::query_builder::QueryId, Clone, diesel::sql_types::SqlType)]
#[diesel(postgres_type(name = "room_id"))]
pub struct RoomId;
#[derive(diesel::query_builder::QueryId, Clone, diesel::sql_types::SqlType)]
#[diesel(postgres_type(name = "user_t"))]
pub struct UserT;
}
diesel::table! {
use diesel::sql_types::*;
use super::sql_types::UserT;
groups (id) {
id -> Int4,
groupname -> Text,
role -> Nullable<Text>,
username -> UserT,
}
}
diesel::table! {
use diesel::sql_types::*;
use super::sql_types::RoomId;
use super::sql_types::UserT;
messages (id) {
id -> Int8,
room -> RoomId,
body -> Text,
signature -> Text,
client_timestamp -> Int8,
server_timestamp -> Int8,
username -> UserT,
}
}
diesel::table! {
roles (id) {
id -> Int4,
rolename -> Text,
groupname -> Text,
permission -> Text,
}
}
diesel::table! {
users (id) {
id -> Int4,
username -> Text,
password -> Text,
}
}
diesel::allow_tables_to_appear_in_same_query!(groups, messages, roles, users,);