前景回顾
上一篇文章,主要做了以下内容: 1.安装Django,搭建开发环境; 2.创建了一个项目mysite; 3.成功启动了Django开发服务器; 4.成功的访问了Django欢迎界面; 以上内容如果未实现的请访问上一篇文章:传送门:Python笔记:Django框架做web开发(一) 环境搭建完成以后,接下来开始干活吧。
创建投票应用
要创建应用程序,请确保进入与manage.py文件位于同一目录中:
通过CD命令进入项目路径:
cd D:\mysite
进入文件目录以后,键入以下命令:
python manage.py startapp polls
执行成功以后,将创建一个目录polls:
polls/
__init__.py
admin.py
apps.py
migrations/
__init__.py
models.py
tests.py
views.py
见到以上文件,表明投票应用polls应用创建成功。
编辑视图
视图在 Django 中非常重要,是连接页面与数据的中间纽带。例如登陆系统,用户在页面上输入了用户名和密码点击登录。那么 request 请求会由视图来接收,如何提取出用户名和密码的数据,如何用这些数据去查询数据库,再如何将登录成功的页面返回给用户,这些工作全部由视图层来处理;使用IDE工具打开项目文件目录(笔者使用PyCharm),然后打开文件polls/views.py;
编辑以下内容:
from django.http import HttpResponse
def index(request): return HttpResponse("Hello, Test. You're at the polls index.")
这是Django中最简单的视图。要调用视图,我们需要将其映射到URL - 为此我们需要一个URLconf文件。 要在polls目录中创建URLconf,请创建一个名为的文件urls.py。创建成功以后polls目录现在应该如下所示:
polls/
__init__.py
admin.py
apps.py
migrations/
__init__.py
models.py
tests.py
urls.py
views.py
打开polls/urls.py文件,在文件中输入代码:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
下一步是要在根 URLconf 文件中指向之前创建的 polls.urls 模块。在 mysite/urls.py 文件的 urlpatterns 列表里插入一个 include();
from django.contrib import admin
from django.urls import include, pathurlpatterns = [
path('polls/', include('polls.urls')),
path('admin/', admin.site.urls),
]
函数 include() 允许引用其它 URLconfs。每当 Django 遇到 :func:~django.urls.include 时,它会截断与此项匹配的 URL 的部分,并将剩余的字符串发送到 URLconf 以供进一步处理。 我们设计 include() 的理念是使其可以即插即用。因为投票应用有它自己的 URLconf( polls/urls.py ),他们能够被放在 “/polls/“ , “/fun_polls/“ ,”/content/polls/“,或者其他任何路径下,这个应用都能够正常工作。 以上操作将index 视图添加进了 URLconf。接下来验证是否正常工作,进入manage.py文件目录运行下面的命令:
python manage.py runserver
成功启动服务:
D:\mysite
λ python manage.py runserver
Performing system checks...System check identified no issues (0 silenced).You have 15 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.September 25, 2018 - 16:26:35Django version 2.1, using settings 'mysite.settings'Starting development server at http://127.0.0.1:8000/Quit the server with CTRL-BREAK.
输入http://127.0.0.1:8000/网址访问,会出现以下错误信息:
后台服务返回日志:
Not Found: /
[25/Sep/2018 17:31:54] "GET / HTTP/1.1" 404 2027
出现以上错误是因为,你访问的地址应该是:
http://127.0.0.1:8000/polls/
而不是
http://127.0.0.1:8000/
输入地址
http://127.0.0.1:8000/polls/
重新访问,验证成功,如下所示:
执行成功以后看到:Hello, world. You’re at the polls index.这是你在 index 视图中定义的。实现了以上功能,就是最基础的应用视图开发。View视图,当Django找到匹配的模式时,它调用指定的视图函数,其中一个HttpRequest对象作为第一个参数,并且路由中的任何“捕获”值作为关键字参数。
本文分享自 软件测试testclass 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!