blob: 142aee5a70b252a5742f7aa7bf563e90a7131423 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
use diesel::prelude::*;
use diesel::sqlite::SqliteConnection;
use dotenv::dotenv;
use std::env;
use crate::models::Post;
pub fn establish_connection() -> SqliteConnection {
dotenv().ok();
let database_url = env::var("DATABASE_URL")
.expect("DATABASE_URL must be set");
SqliteConnection::establish(&database_url)
.expect(&format!("Error connecting to {}", database_url))
}
pub fn create_post<'a>(conn: &SqliteConnection, post: &Post) -> Result<usize, diesel::result::Error> {
use crate::schema::posts;
// TODO(andrew): add error checking
return diesel::insert_into(posts::table).values(post).execute(conn);
}
|