Add function and prefer .iter()
This commit is contained in:
parent
53c6fcd917
commit
e3adc35221
12 changed files with 117 additions and 67 deletions
src/db
|
@ -1,20 +1,16 @@
|
|||
use diesel::dsl::sql;
|
||||
use diesel::prelude::*;
|
||||
|
||||
|
||||
use crate::db::errors::DatabaseError;
|
||||
use crate::db::{get_connection, schema};
|
||||
use crate::db::models::*;
|
||||
use crate::db::schema::tags::dsl::tags;
|
||||
use crate::db::schema::junction_tag::dsl::junction_tag;
|
||||
|
||||
use crate::db::schema::tags::dsl::tags;
|
||||
use crate::db::{get_connection, schema};
|
||||
|
||||
pub fn create_tag(new_tag: &str) -> Result<Tag, DatabaseError> {
|
||||
let connection = get_connection();
|
||||
|
||||
let new_tag = NewTag {
|
||||
tag: new_tag,
|
||||
};
|
||||
let new_tag = NewTag { tag: new_tag };
|
||||
|
||||
diesel::insert_into(tags)
|
||||
.values(&new_tag)
|
||||
|
@ -40,13 +36,17 @@ pub fn get_tag(target_tag: &str) -> Result<Tag, DatabaseError> {
|
|||
Ok(result)
|
||||
}
|
||||
|
||||
pub fn create_junction_tag(target_tag: Tag, target_relay: Option<&Relay>, target_schedule: Option<&Schedule>) -> Result<JunctionTag, DatabaseError> {
|
||||
pub fn create_junction_tag(
|
||||
target_tag: Tag,
|
||||
target_relay: Option<&Relay>,
|
||||
target_schedule: Option<&Schedule>,
|
||||
) -> Result<JunctionTag, DatabaseError> {
|
||||
let connection = get_connection();
|
||||
|
||||
let new_junction_tag = NewJunctionTag {
|
||||
relay_id: target_relay.map(|r| r.id),
|
||||
schedule_id: target_schedule.map(|s| s.id),
|
||||
tag_id: target_tag.id
|
||||
tag_id: target_tag.id,
|
||||
};
|
||||
|
||||
diesel::insert_into(junction_tag)
|
||||
|
@ -60,4 +60,4 @@ pub fn create_junction_tag(target_tag: Tag, target_relay: Option<&Relay>, target
|
|||
.or(Err(DatabaseError::InsertGetError))?;
|
||||
|
||||
Ok(result)
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue