diff --git a/app.py b/app.py deleted file mode 100644 index ca9647d26dc4e5cd6567bbd02e434b36b4e4d7c2..0000000000000000000000000000000000000000 --- a/app.py +++ /dev/null @@ -1,90 +0,0 @@ -import os -import secrets -from flask import Flask, render_template, request, redirect, url_for, send_from_directory, abort -from flask_sqlalchemy import SQLAlchemy - -app = Flask(__name__, static_folder='static') -app.config['SEND_FILE_MAX_AGE_DEFAULT'] = 0 -app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///site.db' -app.config['SECRET_KEY'] = secrets.token_hex(16) - -db = SQLAlchemy(app) - -class Project(db.Model): - id = db.Column(db.Integer, primary_key=True) - title = db.Column(db.String(100), nullable=False) - description = db.Column(db.Text, nullable=False) - -@app.route('/') -def home(): - try: - projects = Project.query.all() - return render_template('index.html', projects=projects) - except Exception as e: - print(f"Error fetching projects: {str(e)}") - return render_template('error.html') - -# New route for the 'about' page -@app.route('/about') -def about(): - return render_template('about.html') - -# New route for the 'experience' page -@app.route('/experience') -def experience(): - # Add logic to fetch data related to the Experience section if needed - return render_template('experience.html') - -# New route for the 'portfolio' page -@app.route('/portfolio') -def portfolio(): - # Add logic to fetch data related to the Portfolio section if needed - return render_template('portfolio.html') - -# New route for the 'contact' page -@app.route('/contact') -def contact(): - return render_template('contact.html') - -# Updated route for adding a project without Flask-WTF form -@app.route('/add_project', methods=['GET', 'POST']) -def add_project(): - if request.method == 'POST': - # Retrieve form data directly from request - title = request.form.get('title') - description = request.form.get('description') - - # Print or log the form data to check if it's received - print(f"Received form data - Title: {title}, Description: {description}") - - new_project = Project(title=title, description=description) - db.session.add(new_project) - db.session.commit() - return redirect(url_for('home')) - - return render_template('add_project.html') - -# Updated route for serving the 'my-cv.docx' file -@app.route('/download_cv') -def download_cv(): - file_path = 'static/my-cv.docx' - print(f"Attempting to serve file: {file_path}") - return send_from_directory('static', 'my-cv.docx', as_attachment=True, mimetype='application/docx') - -# Updated route for serving assessment files -@app.route('/download_assessment/<filename>') -def download_assessment(filename): - try: - file_path = f'static/{filename}' - print(f"Attempting to serve file: {file_path}") - return send_from_directory('static', filename, as_attachment=True) - except FileNotFoundError: - print(f"File not found: {file_path}") - abort(404) # Return a 404 Not Found error - except Exception as e: - print(f"Error serving assessment file: {str(e)}") - app.logger.exception(f"Error serving assessment file: {str(e)}") - abort(500) - -if __name__ == '__main__': - app.run(debug=True, port=int(os.environ.get('PORT', 8080))) diff --git a/my_flask_app.py b/my_flask_app.py index ca9647d26dc4e5cd6567bbd02e434b36b4e4d7c2..0ea647ee1c84bdd7ff39ec515920122645d460ff 100644 --- a/my_flask_app.py +++ b/my_flask_app.py @@ -2,6 +2,7 @@ import os import secrets from flask import Flask, render_template, request, redirect, url_for, send_from_directory, abort from flask_sqlalchemy import SQLAlchemy +from models import db, Project app = Flask(__name__, static_folder='static') app.config['SEND_FILE_MAX_AGE_DEFAULT'] = 0 diff --git a/wsgi.py b/wsgi.py index a4f73deaa0d5a2ccfdbf9ed6357cef893b142f84..142f168b9b69a4ed4054e6ec489120cd6b0ff654 100644 --- a/wsgi.py +++ b/wsgi.py @@ -1,4 +1,12 @@ +import os from my_flask_app import app as application +from markupsafe import Markup +import sys +import logging -if __name__ == "__main__": - application.run() +sys.modules['flask'].Markup = Markup + +logging.basicConfig(stream=sys.stderr) + +if __name__ == '__main__': + application.run(host='0.0.0.0', port=int(os.environ.get('PORT', 8080)))