Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Real Python Part 3: Advanced Web Development with Django
1 Preface
1.1 Thank you
1.2 License
1.3 Conventions
1.4 Course Repository
1.5 Errata
2 Introduction
2.1 Welcome to Advanced Web Programming!
2.2 Why this course?
2.3 What is Software Craftsmanship?
2.4 What will you learn?
2.5 What will you build?
3 Software Craftsmanship
3.1 Testing Routes and Views
3.2 Refactoring our Tests
3.3 Testing Models
3.4 Testing Forms
3.5 Testing Summary
4 Test Driven Development
4.1 The TDD Workflow
4.2 Implementing TDD with Existing Code
4.3 Django Ecommerce Project
4.4 Offense is only as good as your worst defense
4.5 Conclusion
4.6 Exercises
5 Git Branching at a Glance
5.1 Git Branching
5.2 Branching Models
5.3 Enough about git branching
5.4 Exercises
6 Upgrade, Upgrade, and Upgrade some more
6.1 Django 1.8
6.2 The Upgrade
6.3 DiscoverRunner
6.4 Update Project Structure
6.5 Upgrading to Python 3
6.6 Python 3 Changes Things Slightly
6.7 Upgrading to PostgreSQL
6.8 Conclusion
6.9 Exercises
7 Graceful Degradation and Database Transactions with Django 1.8
7.1 What is Graceful Degradation?
7.2 User Registration
7.3 Handling Unpaid Users
7.4 Improved Transaction Management
7.5 What is a transaction?
7.6 What’s wrong with transaction management prior to Django 1.6?
7.7 What’s right about transaction management in Django 1.6 and above?
7.8 SavePoints
7.9 Nested Transactions
7.10 Completing the Front-end
7.11 Conclusion
7.12 Exercises.
8 Building a Membership Site
8.1 It’s time to make something cool
8.2 A Membership Site
8.3 The User Stories
9 Bootstrap 3 and Best Effort Design
9.1 Start with the User Story
9.2 Overview of what we have
9.3 Installing Bootstrap 3
9.4 Making Bootstrap your own
9.5 HTML5 Sections and the Semantic Web
9.6 More Bootstrap Customizations
9.7 Custom template tags
9.8 A Note on Structure
9.9 Conclusion
9.10 Exercises
10 Building the Members Page
10.1 User Story
10.2 Update Main Template
10.3 Template 1: Showing User Info for the Current User
10.4 Gravatar Support
10.5 Template 2: Status Updating and Reporting
10.6 Template 3: Displaying Status Updates
10.7 Exercises
11 REST
11.1 Structuring a REST API
11.2 REST for MEC
11.3 Django REST Framework (DRF)
11.4 Now Serving JSON
11.5 Using Class-Based Views
11.6 Authentication
11.7 Conclusion
11.8 Exercises
12 Django Migrations
12.1 The problems that Migrations Solve
12.2 Getting Started with Migrations
12.3 The Migration File
12.4 When Migrations Don’t Work
12.5 Data Migrations
12.6 Conclusion
12.7 Exercises
13 AngularJS Primer
13.1 What we are covering
13.2 Angular for Pony Fliers (aka Django Devs)
13.3 Angular vs Django - re: template tags
13.4 Angular Data Binding Explained
13.5 Building User Polls
13.6 Conclusion
13.7 Exercises
14 Djangular: Integrating Django and Angular
14.1 The User Polls Backend Data Model
14.2 A REST Interface for User Polls
14.3 Structural Concerns
14.4 Building the Template
14.5 Loading Poll Items Dynamically
14.6 Refactoring - progress bars
14.7 Refactoring - multiple users
14.8 Using Angular Factories
14.9 Conclusion
14.10 Exercises
15 Angular Forms
15.1 Field Validation
15.2 Display Error Messages
15.3 Form submission with Angular
15.4 How I taught an old view some new JSON tricks.
15.5 Fixing Tests
15.6 Breaking Chains
15.7 Conclusion
15.8 Exercises
16 MongoDB Time!
16.1 Building the front-end first
16.2 MongoDB vs SQL
16.3 Installing Mongo
16.4 Configuring Django for MongoDB
16.5 Django Models and MongoDB
16.6 A Geospatial primer
16.7 Mongoengine Support for Geospatial Features
16.8 Showing a Dot on a Map
16.9 Connecting the Dots
16.10 Getting User Locations
16.11 Conclusion
16.12 Exercises
17 One Admin to Rule Them All
17.1 Basic Admin
17.2 All your model are belong to us
17.3 Editing Stuff
17.4 Making things Puuurdy
17.5 Adminstrating Your Users
17.6 Resetting passwords
17.7 Conclusion
17.8 Exercises
18 Testing, Testing, and More Testing
18.1 Why do we need more testing?
18.2 What needs to be GUI tested?
18.3 Ensuring Appropriate Testing Coverage
18.4 GUI Testing with Django
18.5 Our First GUI Test Case
18.6 The Selenium API
18.7 Acting on elements you have located
18.8 Waiting for things to happen
18.9 Page Objects
18.10 When Selenium Doesn’t Work
18.11 Limitations of Django’s LiveServerTestCase
18.12 Conclusion
18.13 Exercises
19 Deploy
19.1 Where to Deploy
19.2 What to Deploy
19.3 Firing up the VPS
19.4 Configuring the OS
19.5 Django Setup
19.6 Configuration as Code
19.7 Let’s script it
19.8 Continuous Integration
19.9 Conclusion
19.10 Exercises
20 Appendix A - Solutions to Exercises
20.1 Software Craftsmanship
20.2 Test Driven Development
20.3 Bootstrap 3 and Best Effort Design
20.4 Building the Members Page
20.5 REST
20.6 Django Migrations
20.7 AngularJS Primer
20.8 Djangular: Integrating Django and Angular
20.9 Angular Forms
20.10 MongoDB Time!
20.11 One Admin to Rule Them All
20.12 Testing, Testing, and More Testing
20.13 Deploy
← Prev
Back
Next →
← Prev
Back
Next →