1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
#[macro_use] extern crate diesel; use diesel::prelude::*; use diesel::sql_query; use diesel::sqlite::SqliteConnection; pub mod crud; pub mod models; pub mod schema; pub type NxtnoteConfigFile = SqliteConnection; pub fn initialize_config(conn: &SqliteConnection) { sql_query( "\ CREATE TABLE settings ( namespace TEXT NOT NULL, category TEXT NOT NULL, name TEXT NOT NULL, value BLOB, PRIMARY KEY(namespace, name, category) ) ", ) .execute(conn) .unwrap(); } pub fn get_config(file: String) -> NxtnoteConfigFile { let connection = SqliteConnection::establish(&file).expect(&format!("Error connecting to {}", file)); sql_query("PRAGMA foreign_keys = ON").execute(&connection).unwrap(); connection }