编程二组 web之Django框架学习周小结第2篇

创建于04-07
阅读 312
收藏TA

需扫码在手机上打开
文章后点击更新提醒

一、视图与路径函数

在Django中,视图函数负责处理用户请求并返回响应。而路径函数则负责将URL映射到相应的视图函数。

# views.py  

from django.http import HttpResponse  

  

def hello_world(request):  

    return HttpResponse("Hello, World!")  

  

# urls.py  

from django.urls import path  

from . import views  

  

urlpatterns = [  

    path('hello/', views.hello_world),  

]

二、路径转换器

Django提供了几种内置的路径转换器,如int、str、slug等,也允许自定义转换器。

# urls.py  

from django.urls import path, register_converter  

from . import views, converters  

  

register_converter(converters.MyConverter, 'myconverter')  

  

urlpatterns = [  

    path('articles//', views.year_archive),  

]

三、重定向

使用django.shortcuts中的redirect函数实现重定向。

from django.shortcuts import redirect  

  

def my_view(request):  

    # ... some code here ...  

    return redirect('/some/other/url/')

四、模板系统

Django模板系统用于动态生成HTML内容。

五、模板继承

通过使用{% extends %}标签,一个模板可以继承另一个模板的内容。

六、访问静态文件

Django提供了专门的设置和工具来管理和访问静态文件。在settings.py中配置静态文件路径

STATIC_URL = '/static/'  

STATICFILES_DIRS = [  

    BASE_DIR / "static",  

]

然后在模板中引用静态文件:

{% load static %}  

<'img src="{% static 'images/my_image.png' %}" alt="My image">

七、请求与响应对象

在视图函数中,你可以通过request对象获取用户请求的信息,并构建HttpResponse对象作为响应。

from django.http import HttpResponse  

  

def my_view(request):  

    if 'query_param' in request.GET:  

        message = request.GET['query_param']  

    else:  

        message = 'No query parameter provided.'  

    return HttpResponse(message)

八、Cookie与Session

Cookie用于在客户端存储数据,而Session用于在服务器端存储用户会话数据。

# 设置cookie  

response = HttpResponse("Cookie set")  

response.set_cookie('my_cookie', 'my_value')  

  

# 获取cookie  

my_cookie = request.COOKIES.get('my_cookie')  

  

# 设置session  

request.session['my_session_key'] = 'my_session_value'  

  

# 获取session  

my_session_value = request.session.get('my_session_key')

阅读 312
文章由 美篇工作版 编辑制作
投诉