Compare commits

..

6 Commits

Author SHA1 Message Date
Nyemba Ambela Jean Nicolas 37634eef6a Dev Repot Update
10 months ago
Nyemba Ambela Jean Nicolas 960e55bdae Modification du fichier gitignore
10 months ago
Nyemba Ambela Jean Nicolas 5b0feb63ac Merge branch 'design' into dev
10 months ago
Nyemba Ambela Jean Nicolas a6218563be Rename Rapport/Notes
10 months ago
Nyemba Ambela Jean Nicolas 5d929dc5ba Ajout du design de la page home
10 months ago
Nyemba Ambela Jean Nicolas 1294564127 Flask, deploiement serveur/structuration de l'application en package | git, ajout d'une branche design
10 months ago

Binary file not shown.

Binary file not shown.

@ -1,97 +0,0 @@
from datetime import datetime
from flask import Flask, render_template, url_for, flash, redirect
from flask_sqlalchemy import SQLAlchemy # type: ignore
from forms import RegistrationForm, LoginForm
app = Flask(__name__)
app.config['SECRET_KEY'] = 'db3746b2ffa650b3804e4316d227f853'
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///blogsite.db'
db = SQLAlchemy(app)
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}')"
posts = [
{
'pagetitle': 'home page'
}
]
navbaritems = [
{
'name': 'home',
'url': 'home'
},
{
'name': 'login',
'url': 'login'
},
{
'name': 'register',
'url': 'register'
}
]
@app.route("/")
@app.route("/home")
def home():
return render_template('home.html', posts=posts, navbaritems=navbaritems)
@app.route("/about")
def about():
return render_template('about.html', title='About', posts=posts, navbaritems=navbaritems)
@app.route("/register", methods=['GET', 'POST'])
def register():
form = RegistrationForm()
if form.validate_on_submit():
flash(f'Account created for {form.username.data}!')
return redirect(url_for('home'))
return render_template('register.html', title='Register', form=form)
@app.route("/login", methods=['GET', 'POST'])
def login():
form = LoginForm()
if form.validate_on_submit():
if form.email.data == 'admin' and form.password.data == 'admin':
flash('You have been log in !')
return redirect(url_for('home'))
else:
flash('Login Unsuccessful')
return render_template('login.html', title='Login', form=form)
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0', port=8700)

@ -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

@ -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}')"

@ -0,0 +1,58 @@
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 = [
{
'pagetitle': 'home page'
}
]
navbaritems = [
{
'name': 'home',
'url': 'home'
},
{
'name': 'login',
'url': 'login'
},
{
'name': 'register',
'url': 'register'
}
]
@app.route("/")
@app.route("/home")
def home():
return render_template('home.html', posts=posts, navbaritems=navbaritems)
@app.route("/about")
def about():
return render_template('about.html', title='About', posts=posts, navbaritems=navbaritems)
@app.route("/register", methods=['GET', 'POST'])
def register():
form = RegistrationForm()
if form.validate_on_submit():
flash(f'Account created for {form.username.data}!')
return redirect(url_for('home'))
return render_template('register.html', title='Register', form=form)
@app.route("/login", methods=['GET', 'POST'])
def login():
form = LoginForm()
if form.validate_on_submit():
if form.email.data == 'admin' and form.password.data == 'admin':
flash('You have been log in !')
return redirect(url_for('home'))
else:
flash('Login Unsuccessful')
return render_template('login.html', title='Login', form=form)

Binary file not shown.

@ -0,0 +1,5 @@
from blogapp import app
if __name__ == '__main__':
app.run(debug=True, host="0.0.0.0", port=8700)
Loading…
Cancel
Save