Project 12 - Superhero News
Goals
- Application Features
- Superhero Database - display Superheroes
- News Feed - blog application to capture news
- Design Patterns
- Views
- Data
- Tests
- Build automatic tests
- Data model test
- View test
- Data view tests
Steps
Application Features
- Automatic Tests
- Superhero Database
- News Feed
- User management
- Design Patterns
Home Page
- The landing page for the app will have a main menu and tabs
- Menu Items
- Superhero Home, About, BACS350, User Info
- Tabs
- Superhero Gallery
- Superhero News
News Feed
- Leverage blog app
- Build a blog for news articles
- Link articles to heroes
News Feed Data
- Author - ForeignKey(User)
- Date - DateField
- Title - CharField(200)
- Text - TextField
- Hero - ForeignKey(Superhero)
News Feed Views
- News Add (Create)
- Set Author, Date, Title, Text, Hero
- Handle input errors
- Go to News list after add
- News List (Read)
- Show an accordion for all news articles
- Details for each hero
- Show Author, Date, Title, Text, Hero
- Show Edit button
- News Edit (Update)
- Set Title, Text, Hero
- Don't edit the Author or Date
- Handle input errors
- Only author can edit
- Go to News list after edit
- Show Delete button
- News Delete (Delete)
- Confirm or Cancel
- Only author can delete
- Go to News list after delete
User management
- Registration
- Login and Access
- User info
Design Patterns
- Users - User registration, Login, Display
- Views - View inheritance, Data Views
- Data - CRUD operation
- Tests - Each Data Type x CRUD Views
Component Views
- Use workshop views
- Card
- Document
- Table
- Accordion
- Tabs
- Navbar
- Super View
Build automatic tests
- Each view has a test
- Page exists
- Check template
- Check page title
- Data View tests
- Fake User
- Superhero Add (Create)
- Superhero List (Read)
- Superhero Detail (Read)
- Superhero Edit (Update)
- Superhero Delete (Delete)
- News Add (Create)
- News List (Read)
- News Detail (Read)
- News Edit (Update)
- News Delete (Delete)
Test the pages
- Browse to http://YOUR_USER.pythonanywhere.com for Your Site
- Make sure this address is set in Sensei
Requirements
- Pages published on server
- Superhero Gallery
- Superhero News
- Menu, Tabs, Style, Header, Footer
- CRUD operations all work
- All pages have valid HTML, CSS, Links
- Tests for all views and data
- Design Patterns
- Clean and organized Github repo