diff --git a/deploy_remote.yml b/deploy_remote.yml index 5ae0dea..94fd6bc 100644 --- a/deploy_remote.yml +++ b/deploy_remote.yml @@ -52,9 +52,9 @@ - name: Verify that web and db services are running ansible.builtin.assert: that: - - pythonapp.State == 'running' - vars: - pythonapp: >- - {{ compose_output.containers | selectattr("Service","equalto", "movie-db-web") | first }} + - "movie-db-web" in compose_output.services + - compose_output.services["movie-db-web"].state == "running" + - "movie-db-db" in compose_output.services + - compose_output.services["movie-db-db"].state == "running" diff --git a/main.py b/main.py index c9a520b..44eb4d9 100644 --- a/main.py +++ b/main.py @@ -3,6 +3,7 @@ from flask import render_template, redirect, url_for, flash from flask_login import LoginManager, login_user, logout_user, login_required, current_user import moviedb_func +from moviedb_func import delete_movie_by_id app = flask.Flask(__name__) app.secret_key = "Start1234!" @@ -121,6 +122,15 @@ def save_manual(): return redirect("/") +@app.route("/delete_movie/", methods=["POST"]) +@login_required +def delete_movie(movie_id): + if moviedb_func.delete_movie_by_id(movie_id): + flash("Film erfolgreich gelöscht!") + else: + flash("Fehler beim Löschen des Films.") + return redirect(url_for("index")) + if __name__ == "__main__": moviedb_func.create_movie_database() diff --git a/moviedb_func.py b/moviedb_func.py index d8b76cd..095f4de 100644 --- a/moviedb_func.py +++ b/moviedb_func.py @@ -415,6 +415,12 @@ def get_user_by_id(user_id, db_name="movie_db.db"): return None +def delete_movie_by_id(movie_id: int, db_name: str = "movie_db.db"): + SQL = "DELETE FROM movie_list WHERE id = ?" + with DBcm.UseDatabase(db_name) as db: + db.execute(SQL, (movie_id,)) + return db.rowcount > 0 + if __name__ == "__main__": create_movie_database() diff --git a/templates/index.html b/templates/index.html index 3306f9d..ada3eea 100644 --- a/templates/index.html +++ b/templates/index.html @@ -21,6 +21,7 @@ Regie Medium Erscheinungsjahr + Aktionen @@ -32,6 +33,11 @@ {{list_all.get("regie")}} {{list_all.get("medium")}} {{list_all.get("release_year")}} + +
+ +
+ {% endfor %}