【Django第一步】第一部分:请求和响应

【Django第一步】第一部分:请求和响应

@[Django|翻译| python]

让我们通过例子学习

在本教程中,我们会引导你完成一个基本的调查应用程序,它由两部分组成:
- 一个让人查看调查结果并投票的网站
- 一个允许你添加,更改和删除调查的管理员网站

创建一个项目

pycharm下我们可以直接Create New Project->Django,在Location中填入对应的项目路径即可,这里我们使用mysite作为项目名。这里可能会稍微慢一点,因为pycharm需要在后台下载并安装相应的Django包等

现在我们可以查看新建的mysite项目的文件目录了
Alt text
这些文件分别是
- 外部mysite/目录只是项目的容器,它的命名与Django无关,你可以重命名为任何你想要的名字
- managy.py一个命令行程序,使得你可以以各种方式与Django项目进行交互。你可以在django管理和manage.py中阅读所有细节
- 内部的mysite/目录是项目的Python包,它的名字使你可以用来导入任何你想导入的包名,例如mysite.url
- mysite/__init__.py:一个空文件,告诉Python这个目录应该被视为一个Python包。
- mysite/settings.py:这个Django项目的设置/配置,你可以在Django设置中查看更多
- mysite/urls.py:这个Django项目的URL声明; 您的Django支持的网站的“目录”。您可以在URL调度器中阅读更多关于URL的内容
- mysite/wsgi.py:WSGI兼容的Web服务器为您的项目提供服务的入口点。有关更多详细信息,请参阅如何使用WSGI进行部署

现在,我们已经可以运行这个最初始版的app了 ,可以点击右上方的绿色三角形来运行,或者也可以使用命令行

python manage.py runserver

可能win上的朋友们还不知道怎么在pycharm里使用命令行,如果去百度的话可能出现更多的答案是配置环境变量啊blabla,然而其实很简单,pycharm早就集成了shell了,在项目的右下方,我们可以看到一个terminal,点击就进入了命令行了
这里写图片描述

运行命令,可以看到如下输出
这里写图片描述
现在,访问本地的127.0.0.1:8000,即可看到Django的默认页面
这里写图片描述

更改默认端口:
只要在runserver后加上端口号即可,比如
python manage.py runserver 8080
就表示在8080端口运行
或者如果要收听的端口是一个范围的话,可以使用
python manage.py runserver 0:8000
就表示收听0到8000的所有端口

创建投票应用程序

在mysite项目中键入命令

python manage.py startapp polls
就新建了目录poll,现在项目目录应如下所示

这里写图片描述

编写第一个视图

polls/views.py下加入以下代码

from django.http import HttpResponse


def index(request):
    return HttpResponse("Hello, world. You're at the polls index.")

这是Django中最简单的视图,要调用该视图,我们需要把它映射到一个url下

polls目录下新建urls.py

polls/urls.py路径下添加以下代码

from django.urls import path

from . import views

urlpatterns = [
    path('', views.index, name='index'),
]

接下来要将url指向polls的urls,在mysite/urls.py,添加导入django.urls.includeinclude()urlpattens列表插入

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

urlpatterns = [
    path('polls/', include('polls.urls')),
    path('admin/', admin.site.urls),
]

include()函数允许引用其他的url,当Django遇到include()时,会将字符串包含进去处理

如何使用include()
include()包含其他网址格式时,一定要使用,只有admin.site.urls可以不需要

接下来重新运行程序即可看到对应的页面http://127.0.0.1:8000/polls

path()函数

path函数传递四个函数,routeview是必需的,kwargname是可选参数

route

route是包含url模式的字符串,当出现请求时,Django从第一个模式开始urlpatterns并在列表中向下,将所请求的URL与每个模式进行比较,直到找到匹配的模式。

模式不搜索get和post参数或域名

view

当Django找到一个匹配的模式时,它会以一个HttpRequest对象作为第一个参数以及路由中的任何“捕获”值作为关键字参数来调用指定的视图函数。

name

命名您的URL可以让您从Django其他地方明确地引用它,特别是在模板中。这个强大的功能允许您在只修改单个文件的情况下对项目的URL模式进行全局更改

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值