�CEUG�Web programming and App mobile developement - 2eme
Harouna Diallo – Programme soutenu par le CEUG
Programme
Soyez des acteurs, pas de spectateurs
Plan
DEUXIEME EDITION
Encore du python
Les importations
Les Exceptions
Les comprehensions de listes, sets, dictionnaires
Unpaking de list ou de tuple
Les décorateurs
Qu’est ce qu’un callable ?��C’est un Objet O que l’on peut appelé avec O()
Qu’est ce qu’un décorateur ?��C’est un callable qui prend comme argument la fonction à décorer et retourne un callable
f = decorateur(f) 🡺 @decorateur
Les tests unitaires
Flask
Micro framework python
Documentation : http://flask.pocoo.org/
Django
Framework pour les perfectionnistes sous pressions
Documentation : https://djangoproject.com/
Micro-Framework vs Framework
MVT
Framework
pip install flask
code minimal
from flask import Flask
app = Flask(__name__)
@app.route(‘/‘)
def welcome():
return “Hello, world”
if __name__ == “__main__”:
app.run(debug=True, port=8000)
Application de gestion d’articles
App0
4 vues
Page d’aceuil --- acceuil�Ajout article --- add�Liste des tous articles --- blog�Details d’un articles ---- detail
ORM : SQL_ACHEMY
Flask_SQLACHEMY
SQLALCHEMY_DATABASE_URI
SQlite : sqlite:///database/blog.db
MySQL : mysql+pymysql://username:password@localhost/mydatabase
PostgreSQL : postgresql+psycopg2://username:password@localhost/mydatabase
Oracle : oracle+cx_oracle://username:password@127.0.0.1:1521/mydatabase
En générale : dialect+driver://username:password@host:port/database
Flask_SQLACHEMY : Model
class User(db.Model):
__tablename__ = ‘Users’
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(80), unique=True, nullable=False)
email = db.Column(db.String(120), unique=True, nullable=False)
created_at = db.Column(db.DateTime, nullable=False, default=datetime.ucw)
Flask_SQLACHEMY : CRUD
Creat-INSERTION
q=User(username=’charlie’, email=’charlie12@gmail.com’)
db.session.add(q)
db.session.commit()
Flask_SQLACHEMY : CRUD
Read-Lecture
User.query.all()
User.query.filter_by(username=’python’).first()
User.query.get(id)
User.query.limit(50).all()
Flask_SQLACHEMY : CRUD
Update-Modification
q=User.query.filter_by(username=’python’).first()
q.username=’nouveauNom’
db.session.add(q)
Flask_SQLACHEMY : CRUD
Delete-Suppression
q=User.query.filter_by(username=’python’).first()
db.session.delete(q)
db.session.commit()
Django
Le Framework pour les perfectionnistes sous pressions
Le cloud
Type de cloud
Héberger les apps sur Heroku
Aller plus loin
Merci :-)
A la prochaine session...
En cas de besoin dans vos projets :
mhdiallo@misgroupe.com
623273737 / 669416210