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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗