2017-08-20 22:59:16 +03:00
|
|
|
use std;
|
|
|
|
|
2017-08-20 23:17:16 +03:00
|
|
|
use chrono;
|
2017-08-20 22:59:16 +03:00
|
|
|
use diesel::sqlite::SqliteConnection;
|
|
|
|
|
2017-08-20 23:17:16 +03:00
|
|
|
use models;
|
|
|
|
|
2017-08-20 22:59:16 +03:00
|
|
|
pub struct State {
|
|
|
|
db_connection: SqliteConnection
|
|
|
|
}
|
|
|
|
|
|
|
|
impl State {
|
|
|
|
pub fn new(db_connection: SqliteConnection) -> State {
|
|
|
|
State { db_connection }
|
|
|
|
}
|
|
|
|
|
2017-08-20 23:17:16 +03:00
|
|
|
pub fn find_article_by_slug(&self, slug: &str) -> Result<Option<models::Article>, Box<std::error::Error>> {
|
|
|
|
Ok(Some(models::Article {
|
|
|
|
id: 0,
|
|
|
|
revision: 0,
|
|
|
|
created: chrono::Local::now().naive_local(),
|
|
|
|
title: slug.to_owned(),
|
|
|
|
body: "Look at me!".to_owned(),
|
|
|
|
}))
|
2017-08-20 22:59:16 +03:00
|
|
|
}
|
|
|
|
}
|