backend/model/entity/
users_impl.rs1use diesel::{debug_query, pg::Pg, QueryResult};
4use diesel_async::{AsyncPgConnection, RunQueryDsl};
5use log::debug;
6use uuid::Uuid;
7
8use crate::{model::dto::UsersDto, schema::users};
9
10use super::Users;
11
12impl Users {
13 pub async fn create(
18 user_data: UsersDto,
19 user_id: Uuid,
20 conn: &mut AsyncPgConnection,
21 ) -> QueryResult<UsersDto> {
22 let user_data = Self::from((user_data, user_id));
23 let query = diesel::insert_into(users::table).values(&user_data);
24 debug!("{}", debug_query::<Pg, _>(&query));
25 query.get_result::<Self>(conn).await.map(Into::into)
26 }
27}