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
  • 相关阅读:
    Core3.0部署后访问接口提示500.30
    Core3.0返回的Json数据大小写格式问题
    linux内核分析之fork()
    【转】【机器人学:运动规划】OMPL开源运动规划库的安装和demo
    【转】毫米波雷达和激光雷达的对比
    [转]开发者需要的 9 款代码比较工具
    [转]关于特征点法、直接法、光流法slam的对比
    [转]【视觉 SLAM-2】 视觉SLAM- ORB 源码详解 2
    [转]ORB特征提取-----FAST角点检测
    [转]图像金字塔
  • 原文地址:https://www.cnblogs.com/wangbin2188/p/12767879.html
Copyright © 2011-2022 走看看