How to create a web application in Python using Django?
Python is a powerful programming language, and Django is a popular Python web framework. Using Django, you can easily create highly modular and scalable web applications. This article will introduce how to create web applications using Django in Python.
- Installing Django
First, you need to install Django. You can install it by entering the following command in the terminal through pip:
pip install Django
- Create Django project
After installing Django, we need to create a Django project. Enter the following command in the terminal:
django-admin startproject projectname
This will create a Django project folder named projectname
with some default files in it. Next, go into the folder:
cd projectname
- Create Django Application
A Django project can contain multiple applications. Each application is independent and can contain its own models, views and templates. To create a new application in a Django project, you can enter the following command in the terminal:
python manage.py startapp appname
This will create a new application folder named appname
.
- Configuring the database
Django uses ORM (Object-Relational Mapping) to connect to the database. By default, Django uses a SQLite database. If you want to use other databases, such as MySQL or PostgreSQL, you need to configure it in the projectname/settings.py
file.
For example, if you want to use a MySQL database, you need to install mysqlclient and add the following code in the projectname/settings.py
file:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'databasename', 'USER': 'username', 'PASSWORD': 'password', 'HOST': 'localhost', 'PORT': '', } }
- Create model
In Django, a model is a Python class corresponding to a database table. You can write model classes in the models.py
file in the application folder. The following is a sample model class:
from django.db import models class Book(models.Model): title = models.CharField(max_length=100) author = models.CharField(max_length=50) published_date = models.DateField() def __str__(self): return self.title
In the example, we create a model class named Book
, which contains three fields: title
, author
and published_date
, each field is a CharField or DateField type. The __str__
method is used to display a human-readable representation of an object on the command line.
- Creating views and URLs
Views are functions that handle web application requests. Write the view function in the views.py
file in the application folder. Here is a sample view function:
from django.shortcuts import render from .models import Book def book_list(request): books = Book.objects.all() return render(request, 'book_list.html', {'books': books})
In the example, we have defined a view function named book_list
which gets all the books from the database and passes them to book_list .html
template.
In order to associate a URL with a view function, you need to define the URL pattern in the urls.py
file in the application folder. The following is an example URL pattern:
from django.urls import path from . import views urlpatterns = [ path('', views.book_list, name='book_list'), ]
In the example, we define an empty path, which will call the book_list
view function.
- Creating Templates
Templates are HTML files used to render data in a web application. Create a folder named templates
within the application folder. Create the book_list.html
template file in this folder. Here is an example template:
{% extends 'base.html' %} {% block content %} <h1 id="Book-List">Book List</h1> <ul> {% for book in books %} <li>{{ book.title }}, by {{ book.author }}, published on {{ book.published_date }}</li> {% endfor %} </ul> {% endblock %}
In the example, we extend the base template named base.html
. We use a for loop to iterate over all books and display their field values.
- Running the Django Server
Now, we have created the Django project and application, defined the models, views, and templates, and created the URL mapping. You can enter the following command in the terminal to start the Django development server:
python manage.py runserver
Visit http://localhost:8000/
in the browser, the book_list
view will be displayed The function returns a list of all books.
Conclusion
Creating web applications is very easy with Django and Python. You can easily create models, views and templates and connect to the database using Django ORM. Django uses the MVC (Model-View-Controller) pattern, which makes it very modular and extensible. If you want to explore more about Django, it is recommended to read Django’s official documentation.
The above is the detailed content of How to create a web application in Python using Django?. For more information, please follow other related articles on the PHP Chinese website!

To maximize the efficiency of learning Python in a limited time, you can use Python's datetime, time, and schedule modules. 1. The datetime module is used to record and plan learning time. 2. The time module helps to set study and rest time. 3. The schedule module automatically arranges weekly learning tasks.

Python excels in gaming and GUI development. 1) Game development uses Pygame, providing drawing, audio and other functions, which are suitable for creating 2D games. 2) GUI development can choose Tkinter or PyQt. Tkinter is simple and easy to use, PyQt has rich functions and is suitable for professional development.

Python is suitable for data science, web development and automation tasks, while C is suitable for system programming, game development and embedded systems. Python is known for its simplicity and powerful ecosystem, while C is known for its high performance and underlying control capabilities.

You can learn basic programming concepts and skills of Python within 2 hours. 1. Learn variables and data types, 2. Master control flow (conditional statements and loops), 3. Understand the definition and use of functions, 4. Quickly get started with Python programming through simple examples and code snippets.

Python is widely used in the fields of web development, data science, machine learning, automation and scripting. 1) In web development, Django and Flask frameworks simplify the development process. 2) In the fields of data science and machine learning, NumPy, Pandas, Scikit-learn and TensorFlow libraries provide strong support. 3) In terms of automation and scripting, Python is suitable for tasks such as automated testing and system management.

You can learn the basics of Python within two hours. 1. Learn variables and data types, 2. Master control structures such as if statements and loops, 3. Understand the definition and use of functions. These will help you start writing simple Python programs.

How to teach computer novice programming basics within 10 hours? If you only have 10 hours to teach computer novice some programming knowledge, what would you choose to teach...

How to avoid being detected when using FiddlerEverywhere for man-in-the-middle readings When you use FiddlerEverywhere...


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Zend Studio 13.0.1
Powerful PHP integrated development environment

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.