Django(三)-搭建第一个应用(2)

本文介绍了如何在Django中实现投票系统的功能,包括问题详情页、问题结果页的视图函数,url配置,以及模板文件的创建和模板硬编码的去除,展示了页面链接的效果。
摘要由CSDN通过智能技术生成

一、编写更多视图

  • 问题详情页——展示某个投票的问题和不带结果的选项列表。
  • 问题结果页——展示某个投票的结果。
  • 投票处理器——用于响应用户为某个问题的特定选项投票的操作。
# 1.问题详情页:展示某个投票的问题和不带结果的选项列表
def detail(request,question_id):
    # 404异常处理-传统方式
    # try:
    #     question = Question.objects.get(pk=question_id)
    # except Question.DoesNotExist:
    #     raise Http404("Quesition does not exit")

    question = get_object_or_404(Question,pk=question_id)
    return render(request,"polls/detail.html",{"question":question})

# 2.问题结果页:展示某个投票的结果
def results(request,question_id):
    response = "You're looking at the results of question %s."
    return HttpResponse(response % question_id)

# 3.投票处理器:用于响应用户为某个问题的特定选项投票的操作
def vote(request,question_id):
    return HttpResponse("You're voting on question %s." % question_id)

 二、配置urlCONF

为新增的三个视图配置urlCONF

 三、创建模板文件

在 polls 目录里创建一个 templates 目录。Django 将会在这个目录里查找模板文件。

默认的设置文件设置了 DjangoTemplates 后端,并将 APP_DIRS 设置成了 True。这一选项将会让 DjangoTemplates 在每个 INSTALLED_APPS 文件夹中寻找 "templates" 子目录。这就是为什么尽管我们没有像在第二部分中那样修改 DIRS 设置,Django 也能正确找到 polls 的模板位置的原因

 四、剔除模板中的硬编码

绿色部分的polls来源自app视图名字:

detail则来源自:

最终绿色的链接部分会跳转到:

五、页面效果

点击链接:

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值