Setting the post id based on the folder name.

This commit is contained in:
Tom Alexander 2023-10-22 13:50:11 -04:00
parent 2f0f3ab346
commit 07e4209048
Signed by: talexander
GPG Key ID: D3A179C9A53C0EDE
2 changed files with 10 additions and 1 deletions

View File

@ -17,6 +17,10 @@ impl BlogPost {
post_dir: P,
) -> Result<BlogPost, CustomError> {
async fn inner(root_dir: &Path, post_dir: &Path) -> Result<BlogPost, CustomError> {
let post_id = post_dir
.file_name()
.expect("The post directory should have a name.");
let org_files = {
let mut ret = Vec::new();
let org_files_iter = get_org_files(post_dir)?;
@ -36,7 +40,7 @@ impl BlogPost {
};
Ok(BlogPost {
id: "foo".to_owned(),
id: post_id.to_string_lossy().into_owned(),
})
}
inner(root_dir.as_ref(), post_dir.as_ref()).await

View File

@ -19,5 +19,10 @@ pub(crate) async fn build_site(args: BuildArgs) -> Result<(), CustomError> {
.into_iter()
.map(walkdir::DirEntry::into_path)
.map(|path| tokio::spawn(BlogPost::load_blog_post(root_directory.clone(), path)));
let mut blog_posts = Vec::new();
for job in load_jobs {
blog_posts.push(job.await??);
}
println!("{:?}", blog_posts);
Ok(())
}