diff --git a/src/api/routes/articles/mod.rs b/src/api/routes/articles/mod.rs index 5585812e..e53c632c 100644 --- a/src/api/routes/articles/mod.rs +++ b/src/api/routes/articles/mod.rs @@ -93,7 +93,7 @@ async fn create_article( &article_request.description, article_request.tags.clone(), &article_request.title, - )?; + ); if let Some(cover) = &article_request.cover { new_article = new_article.with_cover(cover); diff --git a/src/domain/models/blog_article.rs b/src/domain/models/blog_article.rs index cd3a95a3..268289d7 100644 --- a/src/domain/models/blog_article.rs +++ b/src/domain/models/blog_article.rs @@ -1,4 +1,3 @@ -use anyhow::Result; use mongodb::bson::DateTime; use serde::{Deserialize, Serialize}; @@ -24,10 +23,10 @@ impl BlogArticle { description: &str, tags: Vec, title: &str, - ) -> Result { - Ok(Self { + ) -> Self { + Self { author_id: author_id.to_string(), - article_id: Self::generate_article_id(title)?, + article_id: Self::generate_article_id(title), content: content.to_string(), cover: None, created_at: DateTime::now(), @@ -36,7 +35,7 @@ impl BlogArticle { tags, title: title.to_string(), updated_at: None, - }) + } } pub fn with_cover(mut self, cover: &str) -> Self { @@ -44,8 +43,8 @@ impl BlogArticle { self } - pub fn generate_article_id(title: &str) -> Result { - let timestamp = DateTime::now().try_to_rfc3339_string()?; + pub fn generate_article_id(title: &str) -> String { + let timestamp = DateTime::now().timestamp_millis(); let sanitized_title = title .to_lowercase() .chars() @@ -54,6 +53,6 @@ impl BlogArticle { .collect::(); let article_id = format!("{}-{}", timestamp, sanitized_title); - Ok(article_id.chars().take(100).collect()) + article_id.chars().take(100).collect() } }