From fc201f55f172a399f925c64968b6e446fe5b7189 Mon Sep 17 00:00:00 2001 From: Jennie Lees Date: Thu, 4 Jun 2015 17:44:39 -0700 Subject: [PATCH 1/3] Relationships --- models.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/models.py b/models.py index 1b5286a..65eaf43 100644 --- a/models.py +++ b/models.py @@ -13,6 +13,9 @@ class Dessert(db.Model): price = db.Column(db.Float) calories = db.Column(db.Integer) + user_id = db.Column(db.Integer, db.ForeignKey('user.id')) + user = db.relationship("User", backref="desserts") + def __init__(self, name, price, calories): self.name = name self.price = price @@ -32,6 +35,22 @@ def __init__(self, name): self.name = name +class User(db.Model): + id = db.Column(db.Integer, primary_key=True) + username = db.Column(db.String(100)) + password = db.Column(db.String(100)) + email = db.Column(db.String(250)) + name = db.Column(db.String(100)) + avatar = db.Column(db.String(250)) + + def __init__(self, username, password, email, name, avatar): + self.username = username + self.password = password + self.email = email + self.name = name + self.avatar = avatar + + def create_dessert(new_name, new_price, new_calories): # Create a dessert with the provided input. From 6e221856226f29dd4872d887e31bd1126a36552e Mon Sep 17 00:00:00 2001 From: Melinda Kilner Date: Tue, 9 Jun 2015 19:36:47 -0700 Subject: [PATCH 2/3] adding work on app so far --- desserts.db | Bin 0 -> 3072 bytes models.py | 31 ++++++++++++++++++ static/favicon.ico | Bin 0 -> 215897 bytes templates/details.html | 17 ++++++++-- templates/header.html | 10 ++++++ templates/index.html | 14 ++++++-- templates/update.html | 71 +++++++++++++++++++++++++++++++++++++++++ views.py | 29 ++++++++++++++++- 8 files changed, 167 insertions(+), 5 deletions(-) create mode 100644 desserts.db create mode 100644 static/favicon.ico create mode 100644 templates/update.html diff --git a/desserts.db b/desserts.db new file mode 100644 index 0000000000000000000000000000000000000000..9b454633d6410150fb22dd5fc6c8113602b08898 GIT binary patch literal 3072 zcmeHIO-jQ+6rP{N+F<={DH5m;+_a!j=>?1>)?#cmMxo0wnbN_eku=h!^adWlLwEw$ zF1>@`5!`A^RUPnPQ=UN41z;`8?qLTbZK2rKh zU+7Z;9%kopQYEPa^X$O-f{L~=ZuCUNB9HsNDCL(_6%{aX*)=cW`&C6nTNulK??#*j znzu$JL)>2IhCYk=3VL29D%!+k$huu$?!PV7HnQ11AIjN0HPz?Y@bvDf19RrUCqKSv A)Bpeg literal 0 HcmV?d00001 diff --git a/models.py b/models.py index 1b5286a..fbfc175 100644 --- a/models.py +++ b/models.py @@ -33,6 +33,8 @@ def __init__(self, name): def create_dessert(new_name, new_price, new_calories): + # Dessert.query.filter_by + # Create a dessert with the provided input. # We need every piece of input to be provided. @@ -45,6 +47,15 @@ def create_dessert(new_name, new_price, new_calories): if new_name == '' or new_price == '' or new_calories == '': raise Exception("Need name, price and calories!") + # Check that name does not already exist + + if Dessert.query.filter_by(name=new_name).first() is not None: + raise Exception("That name already exists!") + + # Check that calories is between 0 and 2000 + if 0 > new_calories > 2000: + raise Exception("Really that many calories?") + # This line maps to line 16 above (the Dessert.__init__ method) dessert = Dessert(new_name, new_price, new_calories) @@ -82,6 +93,26 @@ def delete_dessert(id): return "Dessert not found" +def update_dessert(id, new_name, new_price, new_calories): + + dessert = Dessert.query.get(id) + + if dessert: + + dessert.name = new_name + dessert.price = new_price + dessert.calories = new_calories + + try: + db.session.commit() + return "Dessert {} updated".format(new_name) + except: + db.session.rollback() + return "Something went wrong" + else: + return "Dessert not found" + + if __name__ == "__main__": # Run this file directly to create the database tables. diff --git a/static/favicon.ico b/static/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..16f6da6aeb45d3a9b2ed9aca8acd6b441b39675b GIT binary patch literal 215897 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%0AyUqTJ+Fm%IA>MQM+19%D>5 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 pIQ*>b-re|{{ dessert.name }}

Calories per dollar: {{ dessert.calories_per_dollar() }}

+ Update Item - Delete {{ dessert.name }} + Delete {{ dessert.name }} + + + diff --git a/templates/header.html b/templates/header.html index afbc019..24b451d 100644 --- a/templates/header.html +++ b/templates/header.html @@ -2,6 +2,9 @@ Desserts + + + @@ -15,4 +18,11 @@ + + diff --git a/templates/index.html b/templates/index.html index b6a05e5..91e09e2 100644 --- a/templates/index.html +++ b/templates/index.html @@ -7,9 +7,18 @@

Dessert Menu

+
+
+ + + + +
+
+ {% if message %} @@ -22,9 +31,10 @@

Dessert Menu

{% endfor %} + Add Item - \ No newline at end of file + diff --git a/templates/update.html b/templates/update.html new file mode 100644 index 0000000..5a760fa --- /dev/null +++ b/templates/update.html @@ -0,0 +1,71 @@ +{% include 'header.html' %} + + + +
+ + +

Update Dessert

+ + {% if dessert %} + + + + + + {% endif %} + + {% if error %} + + {% endif %} + + + + + +
+ +
+ + + + +
+ +
+ + + + +
+ +
+ + + + +
+ + + + + + + +
+ + +
+ + diff --git a/views.py b/views.py index 679621a..5ed4e9c 100644 --- a/views.py +++ b/views.py @@ -1,6 +1,6 @@ from flask import render_template, request -from models import Dessert, create_dessert, delete_dessert +from models import Dessert, create_dessert, delete_dessert, update_dessert from app import app @@ -44,6 +44,12 @@ def add(): @app.route('/desserts/') def view_dessert(id): + # if request.method == "Post": + # dessert_name = request.form.get('search-name') + # dessert = Dessert.query.filter_by(name=dessert_name) + # if dessert: + # dessert = dessert + # return render_template('details.html', ) # We could define this inside its own function but it's simple enough # that we don't really need to. @@ -58,3 +64,24 @@ def delete(id): message = delete_dessert(id) return index() # Look at the URL bar when you do this. What happens? + + +@app.route('/update/', methods=['GET', 'POST']) +def update(id): + + dessert = Dessert.query.get(id) + + if request.method == 'GET': + return render_template('update.html', dessert=dessert, id=id) + + dessert_name = request.form.get('name_field') + dessert_price = request.form.get('price_field') + dessert_cals = request.form.get('cals_field') + + try: + dessert = update_dessert(id, dessert_name, dessert_price, dessert_cals) + return index() + except Exception as e: + # Oh no, something went wrong! + # We can access the error message via e.message: + return render_template('update.html', error=e.message) From 03a2d992bc7726e6780a9d061e4292c442263a4e Mon Sep 17 00:00:00 2001 From: Melinda Kilner Date: Sun, 14 Jun 2015 22:34:51 -0700 Subject: [PATCH 3/3] updated the app! --- app.py | 3 +- backup.csv | 4 ++ backup.py | 27 +++++++++++ desserts.db | Bin 3072 -> 4096 bytes models.py | 13 ++++-- templates/add.html | 2 +- templates/header.html | 6 +-- templates/login.html | 23 +++++++++ templates/menu.html | 41 +++++++++++++++++ templates/update.html | 8 +--- views2.py | 105 ++++++++++++++++++++++++++++++++++++++++++ 11 files changed, 218 insertions(+), 14 deletions(-) create mode 100644 backup.csv create mode 100644 backup.py create mode 100644 templates/login.html create mode 100644 templates/menu.html create mode 100644 views2.py diff --git a/app.py b/app.py index 4347b45..2b88f57 100644 --- a/app.py +++ b/app.py @@ -15,6 +15,7 @@ # a risk that we may run into circular dependencies, so we do it at the # last minute here. - from views import * + # from views import * + from views2 import * app.run(debug=True) diff --git a/backup.csv b/backup.csv new file mode 100644 index 0000000..6100f78 --- /dev/null +++ b/backup.csv @@ -0,0 +1,4 @@ +waffle,15.0,200 +chocolate,15.0,200 +ice cream,10.0,100 +cake,30.0,400 diff --git a/backup.py b/backup.py new file mode 100644 index 0000000..4d0c6f5 --- /dev/null +++ b/backup.py @@ -0,0 +1,27 @@ +from models import * + + +def save_data(): + + with open('backup.csv', 'w') as f: # Open file 'backup.csv' for writing + + for dessert in Dessert.query.all(): + # Create a comma separated line + line = "{},{},{}\n".format(dessert.name, dessert.price, + dessert.calories) + # Write it to the file + f.write(line) + +def load_data(): + + with open('backup.csv') as f: + for line in f: + name, price, calories = line.split(',') + d = Dessert(name, price, calories) + db.session.add(d) + db.session.commit() + + +if __name__=="__main__": + # save_data() + load_data() diff --git a/desserts.db b/desserts.db index 9b454633d6410150fb22dd5fc6c8113602b08898..14237d265133a1159ab2b931bd290024cd40c336 100644 GIT binary patch delta 570 zcmZXQzi-n(6vyxGId&Xj6@#oaSOOyk5~+<+P#IB8xP}Otg0Yagv^wl7HL-K4?a~FQ zO$Sz58Ho|Zz|^f1|3Oz~b|xhLgyQQDgv3ejetf>)_ulF4PVYMVw%JAqDP>%&%E8Rt zt8Fy{*vph zIFIRy(~QEFWQ)rl?e_+fHP2I8jz<@%M+aT{+>z|mTx(5wpw%r4?``JnWz3}_L+N_d z^{L~#51!C-e@!nwLH(hWM=asa3)kyDa=qqUr*qnM%(84-q~U)8PgoTHrFZ5#t>Qj3 zO!kK5Ed7TU&tSSZA+P0ZJ{AeQzb40IlrIe?2tL3MIEHWV6(;ce=%zA+9aB}2jR_8f z7)Cs+;CtjUR#Brw+iZP3=2PgHm=zV>z*z5Yh(N?F=atYd93uD*heu}hGx)cNhAjKGWr#c% yBFM#fE0fm+xwQk4ESKjj){xzpvyFtu(I{jYFRSLs#xROUJY9GtM<%^XXYwEF?UEA! delta 195 zcmZorXpop7Ehx>vz`zW|Fu*iX#~3K6`;3DZD8$6{pMg1(>HlU$mVTzm|CzE_8buh{ zC+9Nvi=}9CY4S3EV_;$4z|8!Z`2zDkAY;yEL5?ow6d^WN24zM@_l(S<#G;hcoSaNK z5gt}n22n<)7<%>920JEwpHvj+t diff --git a/models.py b/models.py index 2a04dd7..20daf80 100644 --- a/models.py +++ b/models.py @@ -16,10 +16,11 @@ class Dessert(db.Model): user_id = db.Column(db.Integer, db.ForeignKey('user.id')) user = db.relationship("User", backref="desserts") - def __init__(self, name, price, calories): + def __init__(self, name, price, calories, user_id): self.name = name self.price = price self.calories = calories + self.user_id = user_id def calories_per_dollar(self): if self.calories: @@ -51,7 +52,7 @@ def __init__(self, username, password, email, name, avatar): self.avatar = avatar -def create_dessert(new_name, new_price, new_calories): +def create_dessert(new_name, new_price, new_calories, user_id): # Dessert.query.filter_by # Create a dessert with the provided input. @@ -76,7 +77,7 @@ def create_dessert(new_name, new_price, new_calories): raise Exception("Really that many calories?") # This line maps to line 16 above (the Dessert.__init__ method) - dessert = Dessert(new_name, new_price, new_calories) + dessert = Dessert(new_name, new_price, new_calories, user_id) # Actually add this dessert to the database db.session.add(dessert) @@ -132,6 +133,12 @@ def update_dessert(id, new_name, new_price, new_calories): return "Dessert not found" +def log_out(user_id): + if user_id: + user_id = None + return user_id + + if __name__ == "__main__": # Run this file directly to create the database tables. diff --git a/templates/add.html b/templates/add.html index d3ad60c..4c2aa22 100644 --- a/templates/add.html +++ b/templates/add.html @@ -68,4 +68,4 @@

Add Dessert

- \ No newline at end of file + diff --git a/templates/header.html b/templates/header.html index 24b451d..956b06d 100644 --- a/templates/header.html +++ b/templates/header.html @@ -20,9 +20,9 @@ diff --git a/templates/login.html b/templates/login.html new file mode 100644 index 0000000..17fe394 --- /dev/null +++ b/templates/login.html @@ -0,0 +1,23 @@ +{% include 'header.html' %} + + +
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+
+
+ diff --git a/templates/menu.html b/templates/menu.html new file mode 100644 index 0000000..3181836 --- /dev/null +++ b/templates/menu.html @@ -0,0 +1,41 @@ +{% include 'header.html' %} + + + +
+ + +

Dessert Menu

+ +
+
+ + + + +
+
+ + {% if message %} + + {% endif %} + + +
    + {% for dessert in desserts %} +
  • {{ dessert.name }} - ${{ dessert.price }}, {{ dessert.calories }} calories
  • + {% endfor %} +
+ + + Add Item + Log Out + + +
+ + diff --git a/templates/update.html b/templates/update.html index 5a760fa..d56599d 100644 --- a/templates/update.html +++ b/templates/update.html @@ -7,9 +7,7 @@

Update Dessert

- {% if dessert %} - - + -
diff --git a/views2.py b/views2.py new file mode 100644 index 0000000..1cef136 --- /dev/null +++ b/views2.py @@ -0,0 +1,105 @@ +from flask import render_template, request, session + +from models import Dessert, User, create_dessert, delete_dessert, update_dessert, log_out +from app import app + + +@app.route('/') +def login(): + user_id = session.get("user_id") + if user_id: + user = User.query.get(user_id) + return render_template('menu.html', desserts=user.desserts) + else: + return render_template('login.html') + + +@app.route('/menu', methods=['GET', 'POST']) +def menu(): + + user_entry = request.form.get('username') + password_entry = request.form.get('password') + + user = User.query.filter_by(username=user_entry).first() + + if user: + if user.password == password_entry: + session["user_id"] = user.id + return render_template('menu.html', desserts=user.desserts) + + +# Secret Key +app.secret_key = 'q') +def view_dessert(id): + + dessert = Dessert.query.get(id) + return render_template('details.html', dessert=dessert) + + +@app.route('/desserts/', methods="[POST]") +def search_dessert(): + dessert_name = request.form.get('search-name') + dessert = Dessert.query.filter_by(name=dessert_name).first() + dessert_id = dessert.id + + return render_template('details.html', dessert=dessert, dessert_id=dessert_id) + + +@app.route('/delete/') +def delete(id): + + message = delete_dessert(id) + + return menu() # Look at the URL bar when you do this. What happens? + + +@app.route('/update/', methods=['GET', 'POST']) +def update(id): + + dessert = Dessert.query.get(id) + + if request.method == 'GET': + return render_template('update.html', dessert=dessert, id=id) + + dessert_name = request.form.get('name_field') + dessert_price = request.form.get('price_field') + dessert_cals = request.form.get('cals_field') + + # Figure out how to not show the success message before updating + + try: + dessert = update_dessert(id, dessert_name, dessert_price, dessert_cals) + return login() + except Exception as e: + # Oh no, something went wrong! + # We can access the error message via e.message: + return render_template('update.html', error=e.message) + +@app.route('/login') +def logout(): + user_id = session.get("user_id") + user_id = log_out(user_id) + return render_template('login.html')