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)

Configuring static files

Let's fix the problem of our static and media images not showing:

  1. In settings.py (on the PythonAnywhere website), we have to add the following in bold:
    …
    STATIC_URL = 'static/'
    STATIC_ROOT = os.path.join(BASE_DIR,'static')
    # Default primary key field type
    # https://docs.djangoproject.com/en/4.0/ref/settings/
    #default-auto-field
    DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
    MEDIA_ROOT = os.path.join(BASE_DIR,'media')
    MEDIA_URL = '/media/'
    …

The STATIC_ROOT variable defines a central location into which we collect all static files.

  1. Save the file and back in the bash console (inside the virtualenv), go to the moviereviews folder (where the manage.py file is located):
    cd moviewreviews/

Execute the following command (Figure 12.20):

python manage.py collectstatic

This command collects all your static files from each of your app folders (including the static...