Event Management App
Project 2
Using Bootstrap’s grid for layout
Project 2: I211_flask
GOAL: Create a simple event app
Start by creating a “unit-2” branch
You’ll create multiple routes and templates: ALL TEMPLATES SHOULD EXTEND BASE.HTML:
Header / Navigation
Main (with <div class="container">)
Footer
Your completed Flask app for Project 2 will function on the SICE servers (put it into production!)
Project 2: I211_flask
ROUTE: /
TEMPLATE: index.html
Using one of Bootstrap’s “heros” templates, create a homepage for your application https://getbootstrap.com/docs/5.1/examples/heroes/
The page should feature a logo, title, description and a button that takes you to an events page (/events/)
Project 2: I211_flask
ROUTE: /events/
TEMPLATE: events.html
Lists all events, with:
Events by ascending order of event date / time (oldest on top)
A link to each event by event ID (see /events/<event_id>)
A button to add a new event (see /events/create)
Project 2: I211_flask
ROUTE: /events/<event_id>
TEMPLATE: event.html
Shows all of the data for the event specified by <event_id>:
Event name
Event date
Event host
Event description
A button to edit the event
A button to delete the event
Project 2: I211_flask
ROUTE: /events/create
TEMPLATE: event_form.html
Shows a form that allows a user to create a new event, with:
Event name
Event date
Event host
Event description
A button to submit / save the event
A reset button to clear the form
Create event:
Project 2: I211_flask
ROUTE: /events/<event_id>/edit
TEMPLATE: event_form.html
A form to edit the event, as specified by <event_id>:
Should be the same form as the one from /events/create
Needs to load existing data into the form fields
Project 2: I211_flask
ROUTE: /events/<event_id>/delete
TEMPLATE: delete_form.html
Presents a delete confirmation for the event specified by <event_id>:
Display “Confirm Delete?”
Show the description for the event
The “Go Back” button takes the user back to the /event/<event_id>/ page without deleting the event.
The “Delete” button will delete the event and redirect back to /events/
Confirm Delete?
Go back...
Project 2: I211_flask
All data should be saved into a file:
events.csv
the file should not be tracked by Git (needs to be in .gitignore)
file should be saved each time its data is changed in the UI (user interface)