summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main.rs6
-rw-r--r--src/works/mod.rs2
-rw-r--r--src/works/stories.rs8
3 files changed, 7 insertions, 9 deletions
diff --git a/src/main.rs b/src/main.rs
index 4be987f..3985b06 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -22,14 +22,14 @@ fn main() {
std::fs::write("docs/index.html", output)
.expect("Failed to write rendered output to index.html");
- let mut file = match std::fs::File::open(std::path::PathBuf::from("stories.json")) {
+ let file = match std::fs::File::open(std::path::PathBuf::from("stories.json")) {
Ok(file) => file,
Err(err) => panic!("Trying to open stories.json in readmode - {:?}", err),
};
let stories = works::stories::Stories::new_from_file(file);
- println!("Stories: {:?}", stories);
+ println!("Stories: {:?}\n", stories);
let context = stories.create_tera_context();
- println!("{:?}", context);
+ println!("Context: {:?}\n", context);
}
diff --git a/src/works/mod.rs b/src/works/mod.rs
index f399fdd..3dfd4a2 100644
--- a/src/works/mod.rs
+++ b/src/works/mod.rs
@@ -10,5 +10,5 @@ pub trait Works: for<'a> Deserialize<'a> {
}
}
- fn create_tera_context(&self) -> Vec<tera::Context>;
+ fn create_tera_context(&self) -> tera::Context;
}
diff --git a/src/works/stories.rs b/src/works/stories.rs
index 5d96ed8..450f3bc 100644
--- a/src/works/stories.rs
+++ b/src/works/stories.rs
@@ -14,12 +14,10 @@ pub struct Story {
}
impl super::Works for Stories {
- fn create_tera_context(&self) -> Vec<tera::Context> {
- let mut context = Vec::new();
+ fn create_tera_context(&self) -> tera::Context {
+ let mut context = tera::Context::new();
for story in self.0.iter() {
- context.push(
- tera::Context::from_serialize(&story).expect("Trying to serialize to tera context"),
- );
+ context.insert(format!("story-{}", story.id), &story);
}
context
}