class Exercises: def __init__(self, db_connection_method): self.execute = db_connection_method def get(self, query): # Add wildcards to the query search_query = f"%{query}%" exercises = self.execute("SELECT exercise_id, name FROM exercise WHERE LOWER(name) LIKE LOWER(%s) ORDER BY name ASC;", [search_query]) return exercises def get_exercise(self, exercise_id): exercise = self.execute("SELECT exercise_id, name FROM exercise WHERE exercise_id=%s;", [exercise_id], one=True) return exercise def update_exercise_name(self, exercise_id, updated_name): sql = "UPDATE exercise SET name = %s WHERE exercise_id = %s;" params = [updated_name, exercise_id] self.execute(sql, params) updated_exercise = self.get_exercise(exercise_id) return updated_exercise