Database access refactor (#190)

This commit is contained in:
Gregory Schier
2025-03-25 08:35:10 -07:00
committed by GitHub
parent 445c30f3a9
commit 1d37d46130
72 changed files with 4895 additions and 4702 deletions
@@ -0,0 +1,25 @@
use crate::error::Result;
use crate::manager::DbContext;
use crate::models::{Settings, SettingsIden};
use crate::queries_legacy::UpdateSource;
impl<'a> DbContext<'a> {
pub fn get_or_create_settings(&self, source: &UpdateSource) -> Result<Settings> {
let id = "default";
if let Some(s) = self.find_optional::<Settings>(SettingsIden::Id, id)? {
return Ok(s);
};
self.upsert(
&Settings {
id: id.to_string(),
..Default::default()
},
source,
)
}
pub fn upsert_settings(&self, settings: &Settings, source: &UpdateSource) -> Result<Settings> {
self.upsert(settings, source)
}
}