Try Django 1.9 | Build a Blog and Learn Python's #1 Library

Learn step-by-step to build a Django Blog Web Applications and get your project in the real world today.
Rating: 4.4 out of 5 (1,263 ratings)
61,368 students
Try Django 1.9 | Build a Blog and Learn Python's #1 Library
Rating: 4.4 out of 5 (1,263 ratings)
61,368 students
Build a Django Blog
Learn Markdown into Django Integration
Learn Django Rest Framework for RESTful API Design


  • Grit & Persistance
  • HTML & CSS knowledge is a plus (not required)
  • Python knowledge is a plus (not required)

Try Django 1.9 Tutorial Series (Last Updated: Oct-2016)

Three project tutorials to help you launch your project this month. This course teaches you the basics of Django by building an Advanced and Modern Blog; the #1 Web Framework written in Python.

Create a Blog with Try Django 1.9Advancing the Blog 


Learn Django Rest Framework in Blog API section to build a powerful RESTful API service.

Django is awesome and very simple to get started. Step-by-step tutorials are to help you understand the workflow, get you started doing something real, then it is our goal to have you asking questions... "Why did I do X?" or "How would I do Y?" These are questions you wouldn't know to ask otherwise. Questions, after all, lead to answers.

This is an Ad-Free Version of the Try Django 1.9 Tutorial Series from our Coding Entrepreneurs Youtube Channel. High Res Video Downloads are also included.

Furthermore, we teach you how to launch on a live hosting service called Heroku.

Over 200,000 students are currently learning from our courses.

Who this course is for:
  • Python Beginners
  • Django Beginners & Advanced users (for API Design)
  • Non-Technicals
  • Anyone looking to learn Full Stack Development
6 sections147 lectures20h 9m total length
  • Welcome
  • Software Versions
  • On YouTube
  • System Setup
  • System Setup Links (PDF)
  • Introduction
  • Walkthrough
  • Before Getting Started
  • Versions & Install
  • Superuser & Admin
  • First App & Model
  • Model to Admin
  • Customize Admin
  • CRUD
  • Writing our First View
  • Request & Response
  • Mapping URLs to Views
  • In App URLs
  • Django Templates
  • Template Context
  • QuerySet Basics
  • Get Item or 404 Query
  • Dynamic URL Routing & Patterns
  • URL links & Get Absolute URL
  • Model Form & Create View
  • Instance Update View
  • Django Messages Framework
  • Delete View
  • Template & Inheritance
  • Setup Static Files - CSS & Javascript & Images in Django
  • Implement Bootstrap
  • Pagination by QuerySet
  • File Uploads with FileField and ImageField
  • SlugField
  • Social Share LInks
  • Custom Template Tags
  • Basic User Permissions
  • Associate User to Post with a Foreign Key
  • Using Facebook Comments
  • Item Publish Data & Draft
  • Model Managers & Handling Drafts
  • Search Posts
  • Next Steps & Thank you
  • Welcome to Advancing the Blog
  • Blog from Try Django 1.9
  • Render HTML and Markdown
  • Implement Django Pagedown for Stack Overflow Style Markdown
  • Responsive Image inside of Post Markdown Content
  • Render Markdown & Django
  • Truncate and Django Template Tags
  • Dynamic Preview of Form Data
  • Django Crispy Forms
  • Bootstrap Input Groups
  • Django Generic Foreign Keys Part 1
  • Django Generic Foreign Keys Part 2
  • Django Generic Foreign Keys Part 3
  • Model Managers & Instance Methods
  • Create Comments
  • Reply to Comments
  • jQuery fadeToggle for Comment Replies
  • Comment Thread
  • Count Words & Get Read Time with Python
  • Blog Post Read Time in Django
  • Delete View with Confirmation
  • Delete Permissions & Http Status Codes
  • Basic User Login, Registration, and Logout
  • User Login & Form Validation
  • User Register Form & View
  • User Login Required
  • Breadcrumb Navigation
  • Thank you!
  • Welcome
  • Getting Started & Installations
  • API Module & ListAPIView
  • Serialize Model Data into JSON
  • Serializing Objects in the Python Shell
  • Retrieve API View aka Detail View
  • Update & Destroy (Delete) API View
  • Update & Delete in the Python Shell
  • Create Serializer and Create API View
  • Associate User with View Methods
  • Custom Permissions
  • Filtering a QuerySet in a ListAPIView
  • Pagination with Rest Framework
  • Hyperlinked Identity Field for URL
  • Serializer Method Field
  • Comments API
  • Comment Children & Reply Count
  • Comments in Post Detail API View
  • Comment Create Serializer Function Part 1
  • Comment Create Serializer Function Part 2
  • Comment Create Serializer Function Part 3
  • Update & Destroy Mixins
  • Comment Detail, Update, & Delete
  • Comment URLS & Post GET API Urls
  • User API Setup
  • ModelSerializer Create Method
  • Serializer Validation
  • Base APIView for User Login
  • UserLogin API Validation
  • User Detail Serializer
  • Django Rest Framework Settings
  • Django Rest Framework JWT & Curl Tests
  • Thank you!
  • 1- Introduction
  • Start Project
  • First Migration
  • Admin & Superuser
  • Apps
  • First View & Url Routing
  • Django Settings Overview
  • Template Configuration
  • Models
  • Admin
  • Model Form
  • Form Validation
  • View & Template Context
  • Form in a View
  • Custom Form in a View
  • Setup Email
  • Static Files in Django 1.8
  • Serving Static Files
  • Adding Bootstrap to Django
  • Django Templates
  • Third Party Library: Django Crispy Forms
  • Bootstrap Grid System
  • Styling MVP Landing Part 1
  • CSS with Blocks
  • URL Names as Links
  • Styling MVP Landing Part 2
  • Django Registration Redux
  • Update Django Login URL to Custom URL
  • Authentication Links in Navbar
  • Login Form in Bootstrap Navbar
  • Styling MVP Landing Part 3
  • Logo Image in Navbar
  • Promo Video & Images
  • Icons with Font Awesome
  • Content for Authenticated Users
  • QuerySet Basics
  • Settings for Different Environments
  • Using SSH for with Webfaction Secure Shell
  • FTP for Production Settings
  • Install PIP + Migrate + Static Settings
  • Fix Static Settings
  • Final One
  • Thank you & Next Steps

Coding Entrepreneur & Teacher - 568,000+ Students
Justin Mitchel
  • 4.3 Instructor Rating
  • 23,513 Reviews
  • 639,933 Students
  • 26 Courses

              It all started with an idea. I wanted freedom... badly. Freedom from work, freedom from boredom, and, most of all, the freedom to choose. This simple idea grew to define me; it made me become an entrepreneur. 

            As I strived to gain freedom, overtime I realized that with everything that you do you can either (1) convince someone, somehow, to do it with you or (2) figure out how to do it yourself. 

              Due to a lack of financial resources (and probably the ability to convince people to do high quality work for free), I decided to learn. Then learn some more. Then some more. My path of learning website design started a long time ago. And yes, it was out of need not desire. I believed I needed a website for a company that I started. So I learned how to do it. The company died, my skills lived on... and got better and better. 

              It took me a while after learning web design (html/css) to actually start learning programming (web application, storing "data", user logins, etc). I tinkered with Wordpress, believing it could be a "user" site, but I was mistaken. Sure there are/were hacks for that, but they were hacks/work-arounds and simply not-what-wordpress-was-indended-to-be. Wordpress is for blogs/content. Plain and simple. 

              I wanted more. I had a web application idea that I thought would change the way restaurants hire their service staff. I tested it with my basic html/css skills, had great initial results, and found a technical (programmer) cofounder as a result. He was awesome. We were featured on CNN. Things looked great. 

              Until... cash-flow was a no-flow. Business? I think not. More like an avid hobby. We had the idea for a business just no business. Naturally, my partner had to find a means of income so I was left with the idea on its own. 

              Remember how I said everything we do has 2 choices. Well I tried the convincing. Now it was time to try the learning. I opted to learn and haven't looked back since. I tried almost every language out there: PHP, Ruby on Rails, SQL, Objective C, C++, Java, Javascript. I was lost. 

              Then, I tried Python. I was hooked. It was so easy. So simple. So elegant. 

              Then, I tried Django. Even more hooked. Made from python & made for web applications. It powers Instagram & Pinterest (two of the hottest web apps right now?). 

              Then, I tried Bootstrap. Simple and easy front-end design (html & css) that is super easy to use, mobile-ready, and overall... incredible. 

            Python, Django, and Bootstrap are truly changing the way the world builds web applications. I believe it's because of the simplicity to learn, the sheer power behind them, and, most of all, the plethora of resources to aid anyone in building their web projects (from packages to tutorials to q&a sites). 

            I relaunched my original venture with my new found skills. That wasn't enough. It didn't compel me as it once had. I started imagining all the possibilities of all the ideas I've always wanted to implement. Now I could. Which one to start with? There were so many good ideas... 

            Then another idea, a new & fresh idea, started brewing. I started to believe in the power of learning these skills. What would it mean if other non-technical entrepreneurs could learn? What would it mean if ideas were executed quickly, revenue models proven, all prior to approaching the highly sought-after programmers? What would it mean if entrepreneurs became coders? 

            And so. Coding for Entrepreneurs was born. 

              Here are some bio highlights: 

Adjunct Professor of Entrepreneurship at the Lloyd Greif Center for Entrepreneurial Studies in the Marshall School of Business at the University of Southern California

Bestselling instructor on Udemy

Funded creator on Kickstarter

Founder of Coding For Entrepreneurs

Cohost of Backer Radio