diff --git a/Notes.docx b/Notes.docx new file mode 100644 index 0000000..1704163 Binary files /dev/null and b/Notes.docx differ diff --git a/Rapport.docx b/Rapport.docx deleted file mode 100644 index 652bd4b..0000000 Binary files a/Rapport.docx and /dev/null differ diff --git a/blog-app/blogapp/__init__.py b/blog-app/blogapp/__init__.py new file mode 100644 index 0000000..f44d1bd --- /dev/null +++ b/blog-app/blogapp/__init__.py @@ -0,0 +1,10 @@ + +from flask import Flask +from flask_sqlalchemy import SQLAlchemy # type: ignore + +app = Flask(__name__) +app.config['SECRET_KEY'] = 'db3746b2ffa650b3804e4316d227f853' +app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///blogsite.db' +db = SQLAlchemy(app) + +from blogapp import routes \ No newline at end of file diff --git a/blog-app/forms.py b/blog-app/blogapp/forms.py similarity index 100% rename from blog-app/forms.py rename to blog-app/blogapp/forms.py diff --git a/blog-app/blogapp/models.py b/blog-app/blogapp/models.py new file mode 100644 index 0000000..68b3a68 --- /dev/null +++ b/blog-app/blogapp/models.py @@ -0,0 +1,27 @@ +from datetime import datetime +from blogapp import db + + +class User(db.Model): + id = db.Column(db.Integer, primary_key=True) + username = db.Column(db.String(20), unique=True, nullable=False) + email = db.Column(db.String(120), unique=True, nullable=False) + image_file = db.Column(db.String(20), nullable=False, + default='default.jpg') + password = db.Column(db.String(60), nullable=False) + posts = db.relationship('Post', backref='author', lazy=True) + + def __repr__(self): + return f"User('{self.username}', '{self.image_file}')" + + +class Post(db.Model): + id = db.Column(db.Integer, primary_key=True) + title = db.Column(db.String(100), nullable=False) + date_posted = db.Column(db.DateTime, nullable=False, + default=datetime.utcnow) + content = db.Column(db.Text, nullable=False) + user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False) + + def __repr__(self): + return f"Post('{self.title}', '{self.date_posted}')" diff --git a/blog-app/blogapp.py b/blog-app/blogapp/routes.py similarity index 82% rename from blog-app/blogapp.py rename to blog-app/blogapp/routes.py index f05de36..172366f 100644 --- a/blog-app/blogapp.py +++ b/blog-app/blogapp/routes.py @@ -1,9 +1,7 @@ -from flask import Flask, render_template, url_for, flash, redirect -from forms import RegistrationForm, LoginForm - -app = Flask(__name__) - -app.config['SECRET_KEY'] = 'db3746b2ffa650b3804e4316d227f853' +from flask import render_template, url_for, flash, redirect +from blogapp import app +from blogapp.forms import RegistrationForm, LoginForm +from blogapp.models import User, Post posts = [ { @@ -12,7 +10,7 @@ posts = [ ] navbaritems = [ - + { 'name': 'home', 'url': 'home' @@ -38,6 +36,7 @@ def home(): def about(): return render_template('about.html', title='About', posts=posts, navbaritems=navbaritems) + @app.route("/register", methods=['GET', 'POST']) def register(): form = RegistrationForm() @@ -57,7 +56,3 @@ def login(): else: flash('Login Unsuccessful') return render_template('login.html', title='Login', form=form) - - -if __name__ == '__main__': - app.run(debug=True, port=8700) diff --git a/blog-app/static/main.css b/blog-app/blogapp/static/main.css similarity index 100% rename from blog-app/static/main.css rename to blog-app/blogapp/static/main.css diff --git a/blog-app/templates/about.html b/blog-app/blogapp/templates/about.html similarity index 100% rename from blog-app/templates/about.html rename to blog-app/blogapp/templates/about.html diff --git a/blog-app/templates/home.html b/blog-app/blogapp/templates/home.html similarity index 100% rename from blog-app/templates/home.html rename to blog-app/blogapp/templates/home.html diff --git a/blog-app/templates/layout.html b/blog-app/blogapp/templates/layout.html similarity index 100% rename from blog-app/templates/layout.html rename to blog-app/blogapp/templates/layout.html diff --git a/blog-app/templates/login.html b/blog-app/blogapp/templates/login.html similarity index 100% rename from blog-app/templates/login.html rename to blog-app/blogapp/templates/login.html diff --git a/blog-app/templates/register.html b/blog-app/blogapp/templates/register.html similarity index 100% rename from blog-app/templates/register.html rename to blog-app/blogapp/templates/register.html diff --git a/blog-app/instance/blogsite.db b/blog-app/instance/blogsite.db new file mode 100644 index 0000000..dadbd8e Binary files /dev/null and b/blog-app/instance/blogsite.db differ diff --git a/blog-app/requirements.txt b/blog-app/requirements.txt index f924291..3adfbe9 100644 Binary files a/blog-app/requirements.txt and b/blog-app/requirements.txt differ diff --git a/blog-app/run.py b/blog-app/run.py new file mode 100644 index 0000000..df9930f --- /dev/null +++ b/blog-app/run.py @@ -0,0 +1,5 @@ + +from blogapp import app + +if __name__ == '__main__': + app.run(debug=True, host="0.0.0.0", port=8700) diff --git a/design/Home - Desktop.png b/design/Home - Desktop.png new file mode 100644 index 0000000..fd02e93 Binary files /dev/null and b/design/Home - Desktop.png differ diff --git a/design/Software.xd b/design/Software.xd new file mode 100644 index 0000000..3c7936b Binary files /dev/null and b/design/Software.xd differ