Maison >développement back-end >Tutoriel Python >Comment créer une application web en Python avec Django ?
Python est un langage de programmation puissant et Django est un framework Web Python populaire. En utilisant Django, vous pouvez facilement créer des applications Web hautement modulaires et évolutives. Cet article explique comment créer des applications Web à l'aide de Django en Python.
Tout d'abord, vous devez installer Django. Vous pouvez l'installer en entrant la commande suivante dans le terminal via pip :
pip install Django
Après avoir installé Django, nous devons créer un projet Django. Entrez la commande suivante dans le terminal :
django-admin startproject projectname
Cela créera un dossier de projet Django nommé projectname
contenant quelques fichiers par défaut. Ensuite, allez dans le dossier : projectname
的Django项目文件夹,其中包含一些默认文件。接下来,进入该文件夹:
cd projectname
一个Django项目可以包含多个应用程序。每个应用程序都是独立的,可以包含自己的模型,视图和模板。在Django项目中创建一个新的应用程序,你可以在终端中输入以下命令:
python manage.py startapp appname
这将创建一个名为appname
的新应用程序文件夹。
Django使用ORM(Object-Relational Mapping)来连接数据库。默认情况下,Django使用SQLite数据库。如果你想使用其他数据库,如MySQL或PostgreSQL,就需要在projectname/settings.py
文件中进行配置。
例如,如果要使用MySQL数据库,你需要安装mysqlclient并在projectname/settings.py
文件中添加以下代码:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'databasename', 'USER': 'username', 'PASSWORD': 'password', 'HOST': 'localhost', 'PORT': '', } }
在Django中,模型是与数据库表对应的Python类。你可以在应用程序文件夹中的models.py
文件中编写模型类。以下是一个示例模型类:
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
在示例中,我们创建了一个名为Book
的模型类,它包含三个字段:title
,author
和published_date
,每个字段都是一个CharField或DateField类型。__str__
方法用于在命令行中显示对象的可读表示。
视图是处理Web应用程序请求的函数。在应用程序文件夹中的views.py
文件中编写视图函数。以下是一个示例视图函数:
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})
在示例中,我们定义了一个名为book_list
的视图函数,它从数据库获取所有书籍并将它们传递给book_list.html
模板。
为了将URL与视图函数关联起来,你需要在应用程序文件夹中的urls.py
文件中定义URL模式。以下是一个示例URL模式:
from django.urls import path from . import views urlpatterns = [ path('', views.book_list, name='book_list'), ]
在示例中,我们定义了一个空路径,它会调用book_list
视图函数。
模板是用于在Web应用程序中呈现数据的HTML文件。在应用程序文件夹中创建一个名为templates
的文件夹。在该文件夹中创建book_list.html
模板文件。以下是一个示例模板:
{% extends 'base.html' %} {% block content %} <h1>Book List</h1> <ul> {% for book in books %} <li>{{ book.title }}, by {{ book.author }}, published on {{ book.published_date }}</li> {% endfor %} </ul> {% endblock %}
在示例中,我们扩展了名为base.html
的基本模板。我们使用for循环迭代所有书籍并显示它们的字段值。
现在,我们已经创建了Django项目和应用程序,定义了模型,视图和模板,并创建了URL映射。你可以在终端中输入以下命令启动Django开发服务器:
python manage.py runserver
在浏览器中访问http://localhost:8000/
,将显示book_list
rrreee
Un projet Django peut contenir plusieurs applications. Chaque application est indépendante et peut contenir ses propres modèles, vues et gabarits. Pour créer une nouvelle application dans un projet Django, vous pouvez saisir la commande suivante dans le terminal :
rrreee🎜Cela créera un nouveau dossier d'application nomméappname
. 🎜projectname/settings.py
. 🎜🎜Par exemple, si vous souhaitez utiliser une base de données MySQL, vous devez installer mysqlclient et ajouter le code suivant dans le fichier projectname/settings.py
: 🎜rrreeemodels.py
dans le dossier de l'application. Voici un exemple de classe modèle : 🎜rrreee🎜 Dans l'exemple, nous créons une classe modèle appelée Book
, qui contient trois champs : titre
, auteur
et published_date
, chaque champ est de type CharField ou DateField. La méthode __str__
est utilisée pour afficher une représentation lisible par l'homme d'un objet sur la ligne de commande. 🎜views.py
dans le dossier de l'application. Voici un exemple de fonction d'affichage : 🎜rrreee🎜 Dans l'exemple, nous avons défini une fonction d'affichage appelée book_list
qui récupère tous les livres de la base de données et les transmet à book_list.htmlmodèle. 🎜🎜Afin d'associer des URL à des fonctions d'affichage, vous devez définir des modèles d'URL dans le fichier <code>urls.py
du dossier de l'application. Voici un exemple de modèle d'URL : 🎜rrreee🎜Dans l'exemple, nous définissons un chemin vide, qui appellera la fonction d'affichage book_list
. 🎜templates
dans le dossier de l'application. Créez le fichier modèle book_list.html
dans ce dossier. Voici un exemple de modèle : 🎜rrreee🎜Dans l'exemple, nous étendons le modèle de base nommé base.html
. Nous utilisons une boucle for pour parcourir tous les livres et afficher les valeurs de leurs champs. 🎜http://localhost:8000/
dans le navigateur, à la fonction d'affichage book_list
le retour sera affiché Une liste de tous les livres. 🎜🎜Conclusion🎜🎜Créer des applications web est très simple avec Django et Python. Vous pouvez facilement créer des modèles, des vues et des modèles et vous connecter à la base de données à l'aide de Django ORM. Django utilise le modèle MVC (Model-View-Controller), ce qui le rend très modulaire et extensible. Si vous souhaitez en savoir plus sur Django, il est recommandé de lire la documentation officielle de Django. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!