Add function to create user
This commit is contained in:
@@ -3,7 +3,7 @@ use diesel::prelude::*;
|
|||||||
use diesel_async::RunQueryDsl;
|
use diesel_async::RunQueryDsl;
|
||||||
use tower_sessions_redis_store::RedisStore;
|
use tower_sessions_redis_store::RedisStore;
|
||||||
|
|
||||||
use crate::models::user::{DbUser, UserCredentials};
|
use crate::models::user::{DbUser, HashedUserCredentials, UserCredentials};
|
||||||
use crate::server::{
|
use crate::server::{
|
||||||
database::{DbConn, DbPool},
|
database::{DbConn, DbPool},
|
||||||
key_val_store::KeyValPool,
|
key_val_store::KeyValPool,
|
||||||
@@ -76,6 +76,17 @@ impl AuthnBackend for AuthBackend {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub async fn create_user(
|
||||||
|
db_conn: &mut DbConn,
|
||||||
|
credentials: &HashedUserCredentials,
|
||||||
|
) -> Result<DbUser> {
|
||||||
|
diesel::insert_into(crate::schema::users::table)
|
||||||
|
.values(credentials)
|
||||||
|
.get_result(db_conn)
|
||||||
|
.await
|
||||||
|
.err_context("Error creating user")
|
||||||
|
}
|
||||||
|
|
||||||
pub async fn get_user_by_id(db_conn: &mut DbConn, id: i32) -> Result<Option<DbUser>> {
|
pub async fn get_user_by_id(db_conn: &mut DbConn, id: i32) -> Result<Option<DbUser>> {
|
||||||
crate::schema::users::table
|
crate::schema::users::table
|
||||||
.find(id)
|
.find(id)
|
||||||
|
|||||||
Reference in New Issue
Block a user