zoukankan      html  css  js  c++  java
  • Django之view

    # 视图的基础函数——HttpResponse
    from django.http import HttpResponse
    def current_datetime(request):
        now = datetime.datetime.now()
        html = "<html><body>It is now %s.</body></html>" % now
        return HttpResponse(html)
    # 视图的快捷函数——render
    from django.shortcuts import render
    def my_view(request):
        ...
        return render(request, 'template.html', {"foo": "bar"},content_type="application/xhtml+xml")
    # 这个示例等同于:
    from django.http import HttpResponse
    from django.template import RequestContext, loader
    def my_view(request):
        ...
        t = loader.get_template('template.html')
        c = RequestContext(request, {'foo': 'bar'})
        return HttpResponse(t.render(c),content_type="application/xhtml+xml")
    # 视图的快捷函数——render_to_response    
    from django.shortcuts import render_to_response
    def my_view(request):
        ...
        return render_to_response('myapp/index.html', {"foo": "bar"},content_type="application/xhtml+xml")
    # 视图的快捷函数——redirect
    你可以用多种方式使用redirect() 函数。
    # 通过传递一个对象;将调用get_absolute_url() 方法来获取重定向的URL:
    from django.shortcuts import redirect
    def my_view(request):
        ...
        object = MyModel.objects.get(...)
        return redirect(object)
    # 通过传递一个视图的名称,可以带有位置参数和关键字参数;将使用reverse() 方法反向解析URL:
    def my_view(request):
        ...
        return redirect('some-view-name', foo='bar')
    # 传递要重定向的一个硬编码的URL:
    def my_view(request):
        ...
        return redirect('/some/url/')
    # 也可以是一个完整的URL:
    def my_view(request):
        ...
        return redirect('http://example.com/')
    #默认情况下,redirect() 返回一个临时重定向。以上所有的形式都接收一个permanent 参数;如果设置为True,将返回一个永久的重定向:
    def my_view(request):
        ...
        object = MyModel.objects.get(...)
        return redirect(object, permanent=True)
    # 视图的快捷函数——get_object_or_404
    from django.shortcuts import get_object_or_404
    def my_view(request):
        my_object = get_object_or_404(MyModel, pk=1)
    # 视图的快捷函数——get_list_or_404
    from django.shortcuts import get_list_or_404
    def my_view(request):
        my_objects = get_list_or_404(MyModel, published=True)
    # 内置错误视图
    
    在根目录的urls.py中增加最下面四行即可
    from django.views import defaults
    urlpatterns = [
            url(r'^admin/', admin.site.urls),
            url(r'^push/',include('push.urls')),
            url(r'^blog/',include('blog.urls')),
            url(r'^accounts/login/$', auth_views.login),
    ]+ static(settings.STATIC_URL, document_root = settings.STATIC_ROOT)
    
    handler404=defaults.page_not_found
    handler500=defaults.server_error
    handler403=defaults.permission_denied
    handler400=defaults.bad_request
  • 相关阅读:
    微信小程序音乐播放控制API在真机上貌似不可用?
    微信小程序request合法域名怎么配置啊
    微信小程序的路径是怎么计算的?
    微信小程序微信录音的silk格式文件怎么转MP3
    微信小程序全国巡回沙龙厦门站-尚琳凯演讲详细内容实录
    微信小程序全国巡回沙龙厦门站-A闪演讲详细内容实录
    微信小程序开发指南合集 各类组件用法技巧
    微信小程序常见问题及新手跳坑指南 每日更新 欢迎补充
    微信小程序沙龙回顾 附演讲实录及ppt
    laravel中的form表单提交
  • 原文地址:https://www.cnblogs.com/wangbin2188/p/12767879.html
Copyright © 2011-2022 走看看