headless_lms_models/
exercise_language_groups.rs1use crate::prelude::*;
2
3#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
4pub struct ExerciseLanguageGroup {
5 pub id: Uuid,
6 pub created_at: DateTime<Utc>,
7 pub updated_at: DateTime<Utc>,
8 pub deleted_at: Option<DateTime<Utc>>,
9 pub course_language_group_id: Uuid,
10}
11
12pub async fn insert(
13 conn: &mut PgConnection,
14 pkey_policy: PKeyPolicy<Uuid>,
15 course_language_group_id: Uuid,
16) -> ModelResult<Uuid> {
17 let res = sqlx::query!(
18 "
19INSERT INTO exercise_language_groups (
20 id,
21 course_language_group_id
22 )
23VALUES ($1, $2)
24RETURNING id
25 ",
26 pkey_policy.into_uuid(),
27 course_language_group_id
28 )
29 .fetch_one(conn)
30 .await?;
31 Ok(res.id)
32}