Skip to content
Snippets Groups Projects

deleted old app.py file

Merged Felix Chadwick-Smith requested to merge master into main
3 files
+ 11
92
Compare changes
  • Side-by-side
  • Inline
Files
3
app.py deleted 100644 → 0
+ 0
90
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)))
Loading