Django Core | A Reference Guide to Core Django Concepts
4.6 (339 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
17,489 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Django Core | A Reference Guide to Core Django Concepts to your Wishlist.

Add to Wishlist

Django Core | A Reference Guide to Core Django Concepts

Dive in deep to the core concepts behind the power Django framework written in Python. Using Django 1.10 with Python 3
4.6 (339 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
17,489 students enrolled
Created by Justin Mitchel
Last updated 1/2017
English
English
Current price: $10 Original price: $195 Discount: 95% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 18.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Django Models
  • Model Instance Methods & Properties
  • Model-level field validation
  • Django Forms and Formsets
  • Form validation
  • Model Form
  • Function Based Views (FBVs)
  • Class Based Views (CBVs)
  • CRUD in Django Views (Create Retrieve Update Delete List)
  • Django Templates
  • Django translation
  • Deploying Django on a Live Server| Heroku, Webfaction, Linode, Digital Ocean
  • Celery + Redis for asynchronous tasks and scheduled tasks
  • and much more!
  • Requirements are Python 2.7 or 3.3 and Django 1.8 & up
  • We use Python 3 and Django 1.10 in this one
View Curriculum
Requirements
  • Try Django 1.8 & Up (suggested course is Try Django 1.9 as it has Try Django 1.8 too)
  • Python knowledge is a plus (30 Days of Python is a suggested course)
Description

Our philosophy is teaching individuals how to code by going through step by step projects. This drives the majority of our content with one exception: the Django Core course. 

In this course, we go in-depth into various Django concepts to provide a comprehensive guide to topics that include:

  • Django Models
  • Model Instance Methods & Properties 
  • Model-level field validation
  • How models map to databases and Primary Keys
  • Django Forms and Formsets
  • Relating Data with Foreign Keys in Django
  • Handling Subdomains with Django Hosts
  • Form validation
  • Model Form
  • Function Based Views (FBVs)
  • Class Based Views (CBVs)
  • CRUD in Django Views (Create Retrieve Update Delete List)
  • Django Templates
  • Template Inheritance 
  • Template shortcuts & Filters
  • Django translation
  • and much more!

We built this for students looking for a in-depth look at the above concepts. We encourage you to have some experience with Django such as our Try Django series (1.8 & Up) which is available on Udemy.

Who is the target audience?
  • Requirements are Python 2.7 or 3.3 and Django 1.8 & up
  • We use Python 3 and Django 1.10 in this one
  • Anyone looking to learn more about Django
  • Any student looking to build robust cutting edge web applications
  • Python Users
  • Django beginners with some experience, like doing our Try Django (1.8 & up Series)
Students Who Viewed This Course Also Viewed
Curriculum For This Course
159 Lectures
18:44:20
+
Introduction
3 Lectures 07:45

Welcome to Django CORE!

Preview 02:39

Suggestions & Recommendations for getting started with this course.

Preview 02:30

How to go about using this course... this video is merely a suggestion but we do think it's the best way to use this course. Cheers!

How to use this course
02:36
+
Django Views
14 Lectures 01:49:21

Welcome to Django Function based views.

Preview 01:47

Create your first view with a new blank project. 

Preview 11:25

Learn about basic responses to any given view.

Http Response & Http Response Redirect
11:02

Understanding CRUD and how it relates to views.

CRUD & Views
10:48

Render Django Templates

Template Rendering
05:28

Understanding how to add context, like variables, strings, lists, and more in Django views.

Understanding Context
05:28

How to update your views to use decorators

User Context & Login Required Decorator
06:41

Build a detail view for working with model data.

Detail View
12:17

Build a create view for working with model data and forms.

Create View
13:44

Build a update view for working with model data and forms.

Update View
05:26

Build a delete view for working with model data.

Delete View
06:15

Learn how to combine your CRUD actions into 1 view; although this method is NOT recommended, it's good to think about how FBVs could work... this, ideally, makes you excited for Class Based Views (see the section in this course for more!)

Combining Crud in 1 View
11:51

Create a basic search function within your views.

Search in List View & Q Lookups
06:29

Thank you for watching this section!

Thank you and next steps
00:40
+
Django Models Unleashed
20 Lectures 02:05:24

Welcome to Django models unleashed.

Preview 01:57

Learn about Django models as it relates to the documentation version.

Preview 01:22

Start and create your django project.

Preview 04:07

Create your first model and run migrations.

Preview 07:14

Learn about Django fields and field arguments.

Boolean Field, Null, & Default Values
09:55

Learn about Django fields and field arguments.

CharField & TextField
04:35

Add your model to the Django Admin.

Render Model in Admin
05:06

Learn about how to create Django field choices

Django Field Choices
05:40

Understanding Django Object name in Unicode

Object Unicode Name
03:39

Learning about built-in field validation.

Built-in Validation
05:59

Create your own custom field validation which is useful for both model fields as well as Form fields.

Custom Field Validation
06:16

Override the Django Model save method.

Overriding the Save Method
07:41

Learn about Django signals to improve the flow of your model saving.

Using Signals with Models
10:48

Learn more about Django fields and field arguments.

Error Messages & Help Text
03:37

Learn about Django fields and field arguments.

Timestamp & DateTimeField
07:25

Extend your Django model with methods & properties.

Instance Methods & Properties
09:46

Working with Model managers and your models.

Model Managers
09:54

Create your own custom QuerySet methods

Custom QuerySet Methods
08:49

How to work with models inside of the Python shell managed by Django.

Models in the Python Shell
10:44

Thank you for watching!

Thank you!
00:50
+
Understanding Class Based Views
15 Lectures 01:43:23

Welcome to Class Based Views

Preview 00:39

Requirements for this section and recommendations before starting.

Preview 01:50

First view & understanding a basic template view.

Preview 04:10

Customize your template view.

Preview 06:14

Learn about the base view all CBVs inherit from and work with your first mixin.

Preview 10:01

Learn how to integrate decorators with your views by creating your own custom mixin.

Preview 09:18

Learn about CRUD with Django Class Based Views.

DetailView
11:03

Learn about CRUD with Django Class Based Views.

ListView
08:22

Learn about CRUD with Django Class Based Views.

CreateView
12:09

Learn about CRUD with Django Class Based Views.

UpdateView
04:11

Learn about CRUD with Django Class Based Views.

Delete View
07:18

Working with Exceptions and querying the database for model objects (instances).

Handling Exceptions with Objects
07:05

Display Django Messages in your CBVs.

Django Messages in a CBV
07:50

Using a form mixin in a Class Based View.

Using a FormMixin in a CBV
11:56

Thank you and next steps!

Next Steps
01:17
+
Forms & Formsets
24 Lectures 02:38:54

Learn about Django forms & formsets in this series.

Preview 01:21

Requirements for this section as well as suggestions before starting..

Requirements & Suggestions
02:34

General overview of what we're going to do.

Basic Overview
02:22

Create a HTML form

An HTML Form
06:26

Create your first Django form

Your First Django Form
02:21

Render your Django form!

Preview 05:53

Learn about Django form fields.

Form Fields
04:37

Collect data from a HTML form

Collecting Data via HTML Form
06:54

Collect data from a Django form.

Collecting Data via Django Form
06:30

Basic form validation

Preview 05:07

Learn about initial form data.

Preview 10:23

Form field label and rendered widgets

Form Field Label & Widgets
11:45

Working with Model forms!

Model Form
09:01

Override the default save method in model form!

Preview 08:04

Adjust model form data in a view!

Adjusting Model Form Data in a View
05:32

Render custom error messages for errors in your form.

Custom Error Messages
11:16

Render custom error messages for errors in your form.

Rendering Form Errors in a View
06:29

Learn how to display your fields in a template manually.

Preview 08:54

Reuasble form template by creating a Template snippet

Reusable Form Template Snippet
05:54

Learn about basic Django formsets!

Preview 07:14

Manage querysets by using Django formsets!

Model Formsets
07:11

Using model form in django model formsets!

ModelForm and QuerySets in Model Formsets
06:17

Create new Forms in a Django formset by using jQuery

Preview 15:53

Thank you and next steps!

Next Steps
00:56
+
Django Templates
8 Lectures 59:12

Set up your project.

Preview 09:43

Welcome to Django templates unleashed!

Introduction
01:34

Learn about Django template filters

Template Filters
10:06

Understanding Django template's for loop & cycle concepts.

Preview 10:19

Working with Django template inheritance 

Inheritance
10:11

Pass variables to django templates with using the "include" django template tag.

Include with Variables
06:34

Override your default app templates.

Preview 09:01

Thank you and next steps!

Preview 01:44
+
Django Translation
6 Lectures 18:30

Welcome to Django translation.

Introduction
02:27

Setup your system to work with gettext.

Setup gettext using Homebrew
02:46

Translate any string in any view.

Preview 06:33

Activate a different language manually to test translated strings.

Manually Activate Translation by Language
02:23

Translate strings within a Django template.

Preview 03:33

Thank you for watching!

Preview 00:48
+
Django User Model Unleashed
12 Lectures 01:34:29

Welcome to the django user model unleashed section.

Welcome
01:05

Requirements for this section.

Requirements
02:00

Extend your user model using Foreign Key field.

Extend User Model
11:04

Create a custom user model using: https://docs.djangoproject.com/en/1.10/topics/auth/customizing/#a-full-example

Custom User Model
17:16

Extend your custom user model easily.

Extending the Custom User Model
04:04

Create a user registration view.

Register User
08:42

User Login & Authentication

User Login & Authentication
17:32

Logout the user of the current session.

User Logout
02:21

Login your user with either username or email

User Login with Username or Email
09:21

Create and work with inactivate users.

Inactive User
06:29

Learn about basic activation keys.

Activation Keys
14:01

Thank you and next steps
00:34
+
Django Tests Unleashed
8 Lectures 01:08:29

Requirements for this section.

Requirements
02:45

Setup basic project from : http://kirr.co/9u0caa/

Setup Project
03:11

Test Django model data.

Model Tests
18:32

Test Django forms.

Form Tests
10:02

Test standard Django views

View Tests
08:00

Tests by Authenticating Users

Authenticating Users Tests
13:25

Doing CRUD Tests using the Django Rest Framework

CRUD Test in Django Rest Framework
11:56

Thank you for watching!

Thank you and next steps
00:38
+
Deployment
16 Lectures 03:08:01
Deployment Introduction
01:52

Learn how to bring your Django project live on Linode

Linode Part 1
17:02

Learn how to bring your Django project live on Linode part 2

Linode Part 2
12:04

Setup a Digital Ocean Account for Django and a Debian Linux System using the guide: http://www.kirr.co/rzigxi/

Digital Ocean | Setup
10:58

Setup a local Django project using the guide: http://www.kirr.co/itznm2/

Digital Ocean | Local Django Project
19:35

Setup a Debian Linux System for Django & Apache using the guide: http://www.kirr.co/ko0gs6/

Digital Ocean | Debian + Apache + Django
15:43

Setup a Digital Ocean Account for Django and a Debian Linux System using the guide: http://www.kirr.co/rzigxi/

Digital Ocean | Local to Live
12:29

Setup Django on Webfaction (http://kirr.co/snbpyg/)

Webfaction | Setup
08:20

Create a Local Django project for use on Webfaction (http://kirr.co/snbpyg/)

Webfaction | Local Django Project
19:35

Bring your Local Django project live on Webfaction (http://kirr.co/snbpyg/)

Webfaction | Local to Live
13:01

Setup Heroku for going live with Django

Heroku | Login to Heroku
04:33

Setup Heroku for going live with Django

Local Django Project
19:35

Setup Heroku for going live with Django using Git

Setup Git for your Project
08:08

Setup Heroku for going live with Django by creating a Heroku app

Create Heroku App
04:52

Setup Heroku for going live with Django

Production Settings & Static Files
05:10

Setup Heroku for going live with Django

Custom Domain & Go Live
15:04
4 More Sections
About the Instructor
Justin Mitchel
4.4 Average rating
5,002 Reviews
266,614 Students
21 Courses
Coding Entrepreneur & Teacher

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