aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Dolan <sed9182@rit.edu>2019-07-28 13:05:18 -0400
committerSean Dolan <sed9182@rit.edu>2019-07-28 13:05:18 -0400
commit9b2917bfc6d370ea5ff7bf156bb0f63268f8957e (patch)
treeab096d9e96d9c5fdb4b0e2bdfdfb455631f27b51
parent92532e125130b1bf51d070c0f410e37f9a24a2c1 (diff)
changed dropdowns based on new requirements; template auto-update
-rw-r--r--app.py24
-rw-r--r--templates/beerpage.jinja227
2 files changed, 27 insertions, 24 deletions
diff --git a/app.py b/app.py
index 0a5e37a..d80811e 100644
--- a/app.py
+++ b/app.py
@@ -11,30 +11,35 @@ app = Flask(__name__)
with open("./data/beers.json") as beers_json:
beer = json.loads(beers_json.read())
+
@app.route('/')
def index():
return render_template('Homepage.jinja2')
+
@app.route('/random')
def random_beer():
rando = random.choice(list(beer.keys())).split('-')
return redirect(url_for('get_beer_details', brewery_id=rando[0], beer_id=rando[1]))
+
@app.route('/brewery/<brewery_id>/')
def get_brewery_list(brewery_id):
return json.dumps(find_beers_from_brewery(brewery_id))
+
@app.route('/brewery/<brewery_id>/<beer_id>')
def get_beer_details(brewery_id, beer_id):
- beer_result = beer_lookup(brewery_id,beer_id)
+ beer_result = beer_lookup(brewery_id, beer_id)
beerinfo = BeerInfo(beer_result)
attrs = ['Burnt', 'Bready', 'Malty', 'Dark', 'Floral', 'Hoppy', 'Dank',
- 'Grassy', 'Boozy', 'Warming', 'Bitter', 'Wheaty', 'Sour',
- 'Barnyardy', 'Woody', 'Smoky', 'Roasty', 'Yeasty', 'Sweet',
- 'Juicy', 'Light', 'Thin', 'Spicy', 'Dry', 'Fruity', 'Herbal',
- 'Salty']
+ 'Grassy', 'Boozy', 'Warming', 'Bitter', 'Wheaty', 'Sour',
+ 'Barnyardy', 'Woody', 'Smoky', 'Roasty', 'Yeasty', 'Sweet',
+ 'Juicy', 'Light', 'Thin', 'Spicy', 'Dry', 'Fruity', 'Herbal',
+ 'Salty']
return render_template('beerpage.jinja2', beer_data=beerinfo, attrs=attrs)
+
def beer_lookup(brewery_id, beer_id):
item_id = brewery_id + "-" + beer_id
try:
@@ -43,9 +48,10 @@ def beer_lookup(brewery_id, beer_id):
except:
return None
+
def find_beers_from_brewery(brewery_id):
pattern = re.compile('^' + brewery_id + '-.*')
- beers = [value for key, value in beer.items() if pattern.match(key)]
+ beers = [value for key, value in beer.items() if pattern.match(key)]
return beers
@@ -59,8 +65,9 @@ class BeerInfo(object):
class Brewery(object):
- def __init__(self, id):
- self.id = id
+
+ def __init__(self, breweryid):
+ self.id = breweryid
self.brews = []
def add_brew(self, brew):
@@ -68,4 +75,5 @@ class Brewery(object):
if __name__ == '__main__':
+ app.config.update(TEMPLATES_AUTO_RELOAD=True)
app.run(host='0.0.0.0')
diff --git a/templates/beerpage.jinja2 b/templates/beerpage.jinja2
index 23ed6bf..6202422 100644
--- a/templates/beerpage.jinja2
+++ b/templates/beerpage.jinja2
@@ -17,25 +17,20 @@
</tr>
</table>
</div>
- <div id="machine">
+ <div class="row">
<select>
+ <option value="3">Much more</option>
+ <option value="2">More</option>
+ <option value="1">Little more</option>
+ <option value="-1">Little less</option>
+ <option value="-2">Less</option>
+ <option value="-3">Much less</option>
</select>
- </div>
-
- <div class="row">
- {% for attr in attrs %}
- <div class="col col-3">
- <select class="form-control" name="{{ attr }}">
- <option value="-3">A lot less {{ attr }}</option>
- <option value="-2">Less {{ attr }}</option>
- <option value="-1">A little less {{ attr }}</option>
- <option value="0" selected>Same {{ attr }}</option>
- <option value="1">A little more {{ attr }}</option>
- <option value="2">More {{ attr }}</option>
- <option value="3">A lot more {{ attr }}</option>
- </select>
- </div>
+ <select>
+ {% for attr in attrs %}
+ <option value="{{ attr }}"> {{ attr }}</option>
{% endfor %}
+ </select>
</div>
{% endblock %}