Django Demo 入门
前言
本文档旨在从入门到入土的整理Django的学习路线,以提供于其他人进行学习。
本文档参考了Django官方技术文档进行编写。Django版本应为4.2版本。
第一步 安装Django
pip install django
第二步 编写你的第一个Django应用程序
让我们通过例子来学习。
在本教程中,我们将引导您完成基本轮询应用程序的创建。
它将由两部分组成:
- 一个公共站点,允许人们查看民意调查并在其中投票。
- 一个允许您添加、更改和删除民意调查的管理站点。
django-admin startproject mysite
这将在您的当前目录中创建一个mysite目录。
让我们看看startproject创建了什么:
mysite/ manage.py mysite/ __init__.py settings.py urls.py asgi.py wsgi.py
这些文件是:
- 外部mysite/根目录是您项目的容器。它的名字对 Django 无关紧要;您可以将其重命名为您喜欢的任何名称。
- manage.py:一个命令行实用程序,可让您以各种方式与此 Django 项目进行交互。manage.py您可以在django-admin 和 manage.py中阅读有关的所有详细信息 。
- 内部mysite/目录是项目的实际 Python 包。它的名称是 Python 包名称,您需要使用它来导入其中的任何内容(例如mysite.urls)。
- mysite/init.py: 一个空文件,告诉 Python 这个目录应该被认为是一个Python包。
- mysite/settings.py:此 Django 项目的设置/配置。 Django settings会告诉你所有关于设置如何工作的信息。
- mysite/urls.py:这个 Django 项目的 URL 声明;您的 Django 网站的“目录”。
- mysite/asgi.py:为您的项目服务的 ASGI 兼容 Web 服务器的入口点。
- mysite/wsgi.py:为您的项目服务的 WSGI 兼容 Web 服务器的入口点。
让我们验证您的 Django 项目是否正常工作。切换到外部mysite目录(如果还没有),然后运行以下命令:
python manage.py runserver
然后你就可以看到你的控制台中存在这样的输出。
Watching for file changes with StatReloader Performing system checks... System check identified no issues (0 silenced). You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions. Run 'python manage.py migrate' to apply them. May 03, 2023 - 05:16:39 Django version 4.2, using settings 'mysite.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CONTROL-C.
现在您的环境——一个“项目”——已经设置好了,您可以开始工作了。
您在 Django 中编写的每个应用程序都包含一个遵循特定约定的 Python 包。Django 附带一个实用程序,可以自动生成应用程序的基本目录结构,因此您可以专注于编写代码而不是创建目录。
项目与应用 项目和应用程序之间有什么区别?应用程序是一种可以执行某些操作的网络应用程序——例如,博客系统、公共记录数据库或小型投票应用程序。项目是特定网站的配置和应用程序的集合。一个项目可以包含多个应用程序。一个应用程序可以在多个项目中。 您的应用程序可以位于您的Python 路径上的任何位置。在本教程中,我们将在与您的文件相同的目录中创建我们的投票应用程序 manage.py,以便它可以作为自己的顶级模块导入,而不是mysite.
要创建您的应用程序,请确保您位于同一目录中manage.py 并键入以下命令:
python manage.py startapp polls
然后我们来写一个简单的视图,首先我们切换到我们的polls文件夹的views.py中。
然后写一段简单的代码
from django.http import HttpResponse # Create your views here. def index(request): return HttpResponse("Hello! This is a Django Project")
这样我们一个简单的view视图就写好了,但是我们需要将路由进行添加,让我们从我们的ip网址中可以访问请求到他。
那么我们就需要创建一个urls.py的文件作为我们polls应用的路由管理。
from django.urls import path from . import views urlpatterns = [ path("", views.index, name="index"), ]
在添加完毕之后,我们需要在整个项目的路由中添加我们的应用polls。所以我们要在mysite文件夹下面的urls.py进行代码的编写。
from django.contrib import admin from django.urls import path, include urlpatterns = [ path("polls/", include("polls.urls")), path('admin/', admin.site.urls), ]
最后我们重新运行项目,并且访问我们的http://127.0.0.1:8080/polls就可以看到效果了。