Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from flask import Flask, render_template, url_for, request, redirect
- from sqlalchemy import create_engine
- from sqlalchemy.orm import sessionmaker
- from database_setup import Base, Restaurant, MenuItem
- engine = create_engine('sqlite:///restaurantmenu.db')
- Base.metadata.bind = engine
- DBSession = sessionmaker(bind=engine)
- session = DBSession()
- app = Flask(__name__)
- @app.route('/')
- @app.route('/restaurant')
- def showRestaurants():
- restaurant = session.query(Restaurant).all()
- return render_template('restaurants.html', restaurant = restaurant)
- @app.route('/restaurant/new', methods=['GET', 'POST'])
- def newRestaurant():
- new_restaurant = Restaurant
- return "hi"
- @app.route('/restaurant/<int:restaurant_id>/edit')
- def editRestaurant(restaurant_id):
- return 'This page will be for editing restaurant %s' % restaurant_id
- @app.route('/restaurant/<int:restaurant_id>/delete')
- def deleteRestaurant(restaurant_id):
- return 'This page will be for deleting restaurant %s' % restaurant_id
- @app.route('/restaurant/<int:restaurant_id>/menu')
- def showMenu(restaurant_id):
- restaurant = session.query(Restaurant).filter_by(id=restaurant_id).one()
- items = session.query(MenuItem).filter_by(restaurant_id=restaurant_id)
- return render_template('menu.html', restaurant=restaurant, items=items, restaurant_id=restaurant_id)
- @app.route('/restaurant/<int:restaurant_id>/menu/new')
- def newMenuItem(restaurant_id):
- return 'This page is for making a new menu item for restaurant %s' % restaurant_id
- @app.route('/restaurant/<int:restaurant_id>/menu/<int:menu_id>/edit')
- def editMenuItem(restaurant_id, menu_id):
- return 'This page is for editing menu item % s' % menu_id
- @app.route('/restaurant/<int:restaurant_id>/menu/<int:menu_id>/delete', methods=['GET','POST'])
- def deleteMenuItem(restaurant_id, menu_id):
- itemToDelete = session.query(MenuItem).filter_by(id=menu_id).one()
- if request.method == 'POST':
- session.delete(itemToDelete)
- session.commit()
- return redirect(url_for('menu.html', restaurant_id=restaurant_id))
- else:
- return render_template('deleteconfirmation.html', item=itemToDelete)
- if __name__ == '__main__':
- app.debug = True
- app.run(host = '0.0.0.0', port = 5000)
- connect_args={'check_same_thread':False}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement