-
Notifications
You must be signed in to change notification settings - Fork 0
Iteration 1 Plan
A working web application that displays poll questions, allows a visitor to select a poll and submit a response (a choice). The application correctly counts number of "votes" for each choice to every poll question and displays a summary of them for a selected poll question.
Questions and choices can be added or changed using the admin interface.
The application displays a list of poll questions where user can click on question text to see a list of available choices for that poll. User can then submit a choice and it is correctly added to the total "votes" for that choice in the poll. Application displays total "votes" for all choices for a selected poll.
- Display a page showing a list of current poll questions.
- Each poll question has a publication date (starting date) and is not shown before the starting date.
- Each poll question is a link to a page displaying the question and a list of choices. A visitor can select a choice and press a button to submit a vote. His vote is recorded when he does this.
- After voting, a visitor can see the total votes for each choice on a poll question.
- Poll questions and choices are saved to a database.
- Poll questions are created using the admin interface (no custom interface yet).
You should record tasks on your task board (in Project) instead of in the iteration plan to avoid duplication. Most or all tasks should be converted to Issues in the
ku-polls
repo. Add any additional tasks you think of.
- Create a task board for this iteration and create detailed tasks for work to be done.
- Create a Django application and an "app" named
polls
(Tutorial part 1). - Create model classes for
Question
andChoice
. Create and migrate the database (Tutorial part 2). - Create an admin user (also Tutorial Part 2).
- Implement a view for home page (index) showing a list of polls. Start the view for question detail page (Tutorial part 3).
- Implement a web form to display poll choices and submit a vote (choice) on a poll, and code to handle the form submission and recording the vote (Tutorial part 4)
- Write Unit Tests (Tutorial part 5)
- test that question is not displayed before starting date (
pub_date
) - test that question is displayed after the
pub_date
- test that index page displays correctly even if no poll questions available
- test that "votes" are counted correctly - this is not in the tutorial
- test that question is not displayed before starting date (
- Add CSS styling (Tutorial part 6)
- Add at least 2 interesting questions to the application. Delete the "What's up" question.
In a web application, you need to design the pages and navigation between them. In the tutorial you will create:
- home page (
index
view) displays a list of poll questions with a link to detail view for each poll question - poll detail page shows a poll question and list of choices using an HTML form (
detail
view) - results page to display vote totals for a particular question and navigation links to other pages (
results
view)
- Application passes all unit tests.
- Application runs and displays list of current poll questions.
- User can select a poll question, see a list of choices, select a choice, and submit his choice. His selection is added to the "vote" count for his selected choice.
- After user submits his choice, application shows vote totals for each answer to a question.
- All navigation links work correctly.
- Application has some CSS styling and text is easy to read.
- Application has at least 2 interesting questions. No trivial questions like "What's up?", "How do you feel?".
- All code committed to Github on
iteration1
branch and merged intomaster
ormain
.