村长 发表于 2022-11-14 08:17:34

【NB】编写更多的视图


http://cdn.u1.huluxia.com/g4/M02/E2/C9/rBAAdmNsaXCAansqAADQ4EfoNCk801.jpg
现在,让我们添加一些视图在 polls/views.py。这些视图略有不同,因为他们需要一个参数:
def detail(request, question_id):
    return HttpResponse("You're looking at question %s." % question_id)

def results(request, question_id):
    response = "You're looking at the results of question %s."
    return HttpResponse(response % question_id)

def vote(request, question_id):
    return HttpResponse("You're voting on question %s." % question_id)
http://cdn.u1.huluxia.com/g4/M02/E2/C9/rBAAdmNsaXGAPP-0AAJs07nf3vs645.jpg
这些新的视图加入到 polls.urls 模块中如下的 url() 调用,polls/urls.py文件中的代码如下:

from django.conf.urls import url

from . import views

urlpatterns = [
    # ex: /polls/
    url(r'^$', views.index, name='index'),
    # ex: /polls/5/
    url(r'^(?P<question_id>+)/$', views.detail, name='detail'),
    # ex: /polls/5/results/
    url(r'^(?P<question_id>+)/results/$', views.results, name='results'),
    # ex: /polls/5/vote/
    url(r'^(?P<question_id>+)/vote/$', views.vote, name='vote'),
]http://cdn.u1.huluxia.com/g4/M02/E2/C9/rBAAdmNsaXKANHkFAAKZokUm5uw437.jpg
可以在浏览器打开“/polls/34/”。
它会运行detail()方法,并显示任何提供的URL内容。
再次尝试访问 “/polls/34/results/” and “/polls/34/vote/”– 这将显示占位符结果和投票页面。

include() 可以很容易包含入插件和网址。
因为polls是在它们自己的URL配置(polls/urls.py),它们可以放置在“/polls/”,或 “/fun_polls/”,或在“/content/polls/”,或任何其它路径的根,应用程序仍然可以工作。

下面是如果用户进入“/polls/34/”,在这个系统会发生什么:
Django会找到匹配'^polls/'

然后,Django会去掉匹配的文本("polls/"),并发送剩余的文本 – "34/" – 到'polls.urls'URL配置用于进一步处理相匹配 r'^(?P<question_id>+)/$'从而调用detail() 视图,如下所示:

detail(request=<HttpRequest object>, question_id='34')http://cdn.u1.huluxia.com/g4/M02/E2/C9/rBAAdmNsaXKAZCduAABoY4uRAaU783.jpg
question_id='34' 是来自 (?P<question_id>+)的一部分,用周围的模式括号“捕捉”匹配该模式文本,并将其作为参数传递给视图函数;?P<question_id> 定义了将被用来识别所述匹配的模式的名称;以及+ 正则表达式匹配一个数字序列(在一个数字)。

由于URL模式是正则表达式,可以使用它来做一些事情,没有任何限制。而且也没有必要添加URL为.html – 除非你想,在这种情况下,你可以这样做:

url(r'^polls/latest\.html$', views.index),http://cdn.u1.huluxia.com/g4/M02/E2/C9/rBAAdmNsaXOAMQIHAABPnaIpMXI989.jpg
页: [1]
查看完整版本: 【NB】编写更多的视图

村长黑科技是专业提供项目资源的服务的村长黑科技平台,如合购网赚项目、引流推广软件、软件程序开发等项目就选村长黑科
技平台参与或发布项目定制各种软件就来村长黑科技平台

本站中所有被研究的素材与信息全部来源于互联网,版权争议与本站无关。本站所发布的任何软件的破解分析文章、破解分析视频、补丁、注册机和注册信息,

仅限用于学习和研究软件安全的目的。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。学习破解分析技术是为了更好的完善软件可能存在的不安全因素,提升软件安全意识。所以您如果喜欢某程序,

请购买注册正版软件,获得正版优质服务!不允许将上述内容私自传播、销售或者其他任何非法用途!否则,产生任何法律责任,一切后果请用户自负,与本网站无关!如有侵权或非法用途请举报!请发送到邮箱:cxphj8@foxmail.com

《意见反馈》或《截图指定页面备注》发送到邮件,收到后24小时内删除,禁止用户学习使用关掉用户【学习使用权】!