Django 入门学习总结2 创建一个投票系统
通过学习,我们可以实现一个简单的投票系统。这个投票系统有两部分组成。
- 公共部分,公众可以查看和进行投票。
- 管理员可以进行增加、删除、修改投票信息。
这里投票系统Python语言版本为3.10.13,Django Web框架版本为4.2.7。
投票系统的实现:
在磁盘的根目录下创建一个文件夹,如django(这个可以根据自己的需要决定投票系统存入在哪个位置)。
浏览到这个文件夹位置,在地址栏中输入cmd命令,进入到命令行提示符下,输入:
django-admin startproject mysite
创建mysite工程。mysite工程中将包含公众投票内容和管理页面,如下图所示。
注意命名上不要有命名冲突,有些是保留字,如django,test等。
创建完成后,mysite的工程结构为:
mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py
上面工程结构各部分的含义为:
- mysite代表工程名称
- manage.py 用于在命令行中与mysite工程进行交互,实现各种功能。
- 里面的mysite/ 是工程实际存放python包和文件的位置。
- __init__.py 初始化文件。
- settings.py代表Django工程的配置文件。
- urls.py 包含了Django工程各个网页地址的定义。
- 最后两个文件asgi.py和wsgi.py,与web 服务器有关。
进入到mysite文件夹下,输入:
python manage.py runserver
则可以启动web服务器,启动信息如下图所示。
这是一个Django 开发测试的服务器,注意不能在商业环境下使用。它是通过Python语言开发的轻量级的Web服务器。
在浏览器中输入网址http://127.0.0.1:8000,则可以看到以下的信息。
默认的端口号为8000,也可以在之前启动服务器中,在输入命令中:
python manage.py runserver 8080
来修改为其他的端口号,如8080。
在一个工程中,可 以包含多个应用,一个应用也可以在多个工程中。在manage.py同一个文件夹中,输入:
python manage.py startapp polls
则创建了一个polls投票系统应用。文件夹结构如下所示:
polls/
__init__.py
admin.py
apps.py
migrations/
__init__.py
models.py
tests.py
views.py
在polls/views.py文件中,修改内容为:
from django.shortcuts import render
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, world. You're at the polls index.")
在同样的位置下,新建一个文件urls.py,用于地址映射的配置。urls.py文件中的内容为:
from django.urls import path
from . import views
urlpatterns = [
path("", views.index, name="index"),
]
在urlpatterns 中,path里面有四个参数。
- 第一个为路由地址route,代表了地址模式匹配方式。
- 第二个为视图,代表了地址相应的网页映射。
- 第三和第四个为可选项。
在mysite/urls.py,修改文件内容为:
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path("polls/", include("polls.urls")),
path("admin/", admin.site.urls),
]
这样就建立了polls应用的映射,可以在网页的地址栏中,输入相关的地址,看到和polls应用相关的网页信息。