This commit is contained in:
2023-03-27 18:03:20 +02:00
parent 8b121c9e6e
commit b3061ad79a
11 changed files with 516 additions and 30 deletions
+24
View File
@@ -0,0 +1,24 @@
use actix_web::{web, HttpResponse};
use diesel::RunQueryDsl;
use crate::{
database::establish_connection, json_serialization::new_feed::NewFeedSchema,
models::feed::new_feed::NewFeed, schema::feed,
};
pub async fn add(new_feed: web::Json<NewFeedSchema>) -> HttpResponse {
let mut connection = establish_connection();
let title: String = new_feed.title.clone();
let url: String = new_feed.url.clone();
let new_feed = NewFeed::new(title, url);
let insert_result = diesel::insert_into(feed::table)
.values(&new_feed)
.execute(&mut connection);
match insert_result {
Ok(_) => HttpResponse::Created().await.unwrap(),
Err(_) => HttpResponse::Conflict().await.unwrap(),
}
}