Book Image

Django 4 for the Impatient

By : Greg Lim, Daniel Correa
Book Image

Django 4 for the Impatient

By: Greg Lim, Daniel Correa

Overview of this book

Learning Django can be a tricky and time-consuming activity. There are hundreds of tutorials, loads of documentation, and many explanations that are hard to digest. However, this book enables you to use and learn Django in just a couple of days. In this book, you’ll go on a fun, hands-on, and pragmatic journey to learn Django full stack development. You'll start building your first Django app within minutes. You'll be provided with short explanations and a practical approach that cover some of the most important Django features, such as Django Apps’ structure, URLs, views, templates, models, CSS inclusion, image storage, authentication and authorization, Django admin panel, and many more. You'll also use Django to develop a movies review app and deploy it to the internet. By the end of this book, you'll be able to build and deploy your own Django web applications.
Table of Contents (14 chapters)

Creating a review

We have seen how to create model objects from the admin – for example, creating a movie object. But how do we allow users to create their own objects, such as letting them post a review from the site? After all, not everyone should have access to the admin panel.

Let's create a page for them to do so:

  1. We first create a path in /movie/urls.py:
    from django.urls import path
    from . import views
    urlpatterns = [        
        path('<int:movie_id>', views.detail,
          name='detail'),
        path('<int:movie_id>/create', views.createreview, 
             name='createreview'),
    ]

/movie/views.py

  1. In /movie/views.py, add def createreview:
    …
    from django.shortcuts import get_object_or_404, redirect
    from .models import Movie, Review
    from .forms...