From ae4f5c746c1111776e18584ecc3f0f226d054e2d Mon Sep 17 00:00:00 2001 From: arthur Date: Sun, 8 Jan 2023 16:41:02 +0100 Subject: [PATCH] first commit --- __pycache__/app.cpython-310.pyc | Bin 0 -> 2041 bytes app.py | 53 ++++++++++++++++++++++++++++++++ instance/data.db | Bin 0 -> 12288 bytes requirements.txt | 0 4 files changed, 53 insertions(+) create mode 100644 __pycache__/app.cpython-310.pyc create mode 100644 app.py create mode 100644 instance/data.db create mode 100644 requirements.txt diff --git a/__pycache__/app.cpython-310.pyc b/__pycache__/app.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f0f2c4ff1643b5b428c364ead7df8ae45847698e GIT binary patch literal 2041 zcmZ`)&2Aev5GJ|5TFJ8GII)8Qtzw`pRG?N0)wVEVnAxYe?Z6sI+|+A(7*UHkeV^K!hg?&InzmH;sMS*ca%^rTrGYZR|Jc>H%u5T>uW$w3PEWiNs6g^+le= z-J$Y0J1&@zO{{{0@AtNn&Jjz8qZ{Hli6#4{)oRg5MjP~nTGh*Y+fR0%{T%LW9d13^ zI@k?={NZUw|MUFgz~mu_cn*r8Hm0aenANvI9EvG9BW<^wPd#b@HcV~moLOz3SyR{r zR(FPHkU#3Npi4}C>~@s~fTXIN9Uf;d4$ywKhrH;HnKECxu*&x$08 zUL@?|1Xh&GnJjqL!7zFE=&=Q|4I-97jZq)H2DagiU!&hF@JIGXR^!XYIZ<{NrA$>R z6CEB8WSnOZf-P9mJx5%he*0PLC{I}{;_|5At)0A6q%4!7B_Y9KG>BW#V6ZV5DnAT4 z8}Kk()Q$zn2VVlEEFn2x(Ni7moVux}9w^-uLMtCF;oEo#FB4;bi(CJqStrjV zPWKAMWvUjQuq4SFKjl23jk|L$t~_dI%84_|PV~^gw+a6Q#v`vqHMioLGyVTsjI*y{ zAc37JnV|{lp$TxcgMO(`$e8pk5S!vRWMYl+)EPr z9>K18M#gZz6^PgM&887tB82wvQmHJSn0rWoCJnlDFl+)GU46f_4EGEqYzXb}?J{YJavmU}HBPu^1Tz>*I z8(BB*l|)rxV+aPxPNcF2g*Z~qvm9c$Y(Wm~#mpsO+QXEbA;d&67rZH1(`Wu>c_lv3 d#V2&dt{@XTV1TkEekH)Z1rh|fZiBdW{0{@a#GU{E literal 0 HcmV?d00001 diff --git a/app.py b/app.py new file mode 100644 index 0000000..2b5c6c2 --- /dev/null +++ b/app.py @@ -0,0 +1,53 @@ +from flask import Flask, jsonify, request +app = Flask(__name__) +from flask_sqlalchemy import SQLAlchemy + +app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///data.db' +db = SQLAlchemy(app) + +app.app_context().push() + +class Drink(db.Model): + id = db.Column(db.Integer, primary_key=True) + name = db.Column(db.String(80), unique=True, nullable=False) + description = db.Column(db.String(120)) + + def __repr__(self) -> str: + return f"{self.name} - {self.description}" + + +@app.route('/') +def index(): + return 'Hello World !' + +@app.route('/drinks') +def get_drinks(): + drinks = Drink.query.all() + + output = [] + for drink in drinks: + drink_data = {'name': drink.name, 'description': drink.description} + output.append(drink_data) + + return {"drinks": output} + +@app.route('/drinks/') +def get_drink(id): + drink = Drink.query.get_or_404(id) + return jsonify({'name': drink.name, "description": drink.description}) + +@app.route('/drinks', methods=['POST']) +def add_drink(): + drink = Drink(name=request.json['name'], description=request.json['description']) + db.session.add(drink) + db.session.commit() + return {'id': drink.id} + +@app.route('/drinks/',methods=['DELETE']) +def delete_drink(id): + drink = Drink.query.get(id) + if drink is None: + return {'error': "not found"} + db.session.delete(drink) + db.session.commit() + return {"message": '{} succesfuly deleted'.format(drink.name)} \ No newline at end of file diff --git a/instance/data.db b/instance/data.db new file mode 100644 index 0000000000000000000000000000000000000000..e76d3117ef9b2c6dcff4d16d15d53fb32109db15 GIT binary patch literal 12288 zcmeI%ze~eF6bJB2Dr&3c+%gFEP0|$c=i(w7Yt&+`8dJfkoaV$}lhh;?9rds9Pw}5{ z7o7bITpYawEV$TB9lj4Pm%EqCh0k^`$45;+m2?rsfkn!D6cCH`KJj<%-{E6`w{=^@%83Y6%009U<00Izz z00bZa0SG_<0>3CgKkYT6kFd(ZR!oPo*OT$K2%>&MQP{mBKcx2Ytfuno_2^tsJ?aYg zQvKssMS>)yB=Q8w8yQm|JXunk==_cGcmBp-f7%f_2tWV=5P$##AOHafKmY;|fB*#k Xr$BbPS5Yohv_YvrpDa|0gTlZkcz$P) literal 0 HcmV?d00001 diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..e69de29