Sitemap

Create a Django project from scratch

4 min readDec 23, 2022

--

Introduction

Django is a powerful and popular web framework for Python that makes it easy to build and deploy web applications. If you are new to Django, you may be wondering how to get started with your own project. In this article, we will walk through the steps involved in creating a Django project from scratch, including installing the necessary software, creating a new project, starting the development server, creating an app, defining a view and a URL pattern, and creating a template file. By the end of this article, you will have a basic Django project up and running and be ready to start building your web application. So let’s get started!

Prerequisites

Before you begin, make sure you have the following software installed on your machine:

  • Python 3: Django is a Python web framework, so you will need to have Python installed on your machine. You can download the latest version of Python from the official Python website (https://www.python.org/downloads/) or use a package manager like pip to install it.
  • Django: You will also need to install Django itself. You can install Django using pip by running the following command:
pip install django

Create a New Project

To create a new Django project, open a terminal window and navigate to the directory where you want to store your project. Then, run the following command:

django-admin startproject myproject

Replace myproject with the name you want to give to your project. This will create a new Django project with the specified name in the current directory.

myproject/
├── manage.py
└── myproject/
├── __init__.py
├── asgi.py
├── settings.py
├── urls.py
└── wsgi.py
  • The manage.py script is used to set the appropriate environment and launch the Django command-line utility
  • The myproject directory contains the configuration for your Django project.
  • The __init__.py file is an empty file that tells Python that this directory should be treated as a Python package.
  • The settings.py file contains settings for your project, such as the database configuration, installed apps, and other settings.
  • The urls.py file defines the URL patterns for your project.
  • The wsgi.py file defines the WSGI application for your project.

Run the Development Server

To test your new Django project, you can start the development server by running the following command from within the project directory:

python manage.py runserver

This will start the development server at http://127.0.0.1:8000/. You can access the Django admin site at http://127.0.0.1:8000/admin/.

Create an App

To create a new app within your Django project, run the following command from within the project directory:

python manage.py startapp myapp

Replace myapp with the name you want to give to your app. This will create a new app with the specified name within your Django project.

Creating HTML Template

Here is an example of a simple mytemplate.html file that you can use with the myview view function defined in the earlier example:

<!DOCTYPE html>
<html>
<head>
<title>My Template</title>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>

This template file defines a simple HTML page with a heading element that says “Hello, World!”. You can customize this template file to include additional content or layout as needed.

Get Pinch of Code’s stories in your inbox

Join Medium for free to get updates from this writer.

To use this template with the myview view function, you will need to save it in the templates directory within your Django app, and make sure that the path specified in the render function matches the file name. For example:

Create a View

To create a view in your Django app, you will need to define a function in the views.py file within your app directory. For example:

from django.shortcuts import render

def myview(request):
return render(request, "mytemplate.html")

This view function returns a rendered template called “mytemplate.html”. You will need to create this template file in the templates directory within your app.

Create a URL Pattern

To create a URL pattern for your view, you will need to define a URL pattern in the urls.py file within your app directory. For example:

from django.urls import path

from . import views

urlpatterns = [
path("myurl/", views.myview, name="myview"),
]

This URL pattern maps the URL “myurl/” to the myview view function.

Include the App URL Patterns in the Project’s URLconf

To include the URL patterns of your app in the project’s URLconf, you will need to include a reference to the app’s urls.py file in the project's urls.py file. For example:

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
path("admin/", admin.site.urls),
path("myapp/", include("myapp.urls")),
]

This will include the URL patterns of the myapp app under the myapp/ URL namespace.

Conclusion

n this article, we have covered the steps involved in creating a Django project from scratch. We have seen how to create a new project, start the development server, create a new app, define a view and a URL pattern, and create a template file. By following these steps, you can set up a basic Django project and start building your web application.

However, this is just a brief overview of the capabilities of Django. To learn more about Django and how to build more advanced web applications, you can refer to the Django documentation (https://docs.djangoproject.com/en/3.1/) or seek help from the Django community (https://www.djangoproject.com/community/).

I hope this article has been helpful in getting you started with Django. Happy coding!

--

--

Pinch of Code
Pinch of Code

Written by Pinch of Code

Python programmer, web developer, YouTuber. You can visit my channel on youtube.com/@pinchofcode.