Python Web 框架-Django day07

目录

1.forms模块

2.cookies 在 Django 中的实现

3.session 在 Django 中的实现

4.在 settings.py中,设置session的相关设置


day06回顾

1.自定义查询对象
    1.声明类 继承自 models.Manager
        定义自定义函数
    2.为实体类覆盖 objects
        class Entry(models.Model):
            objects = EntryManager()
2.HttpRequest
    1.判断请求方式
        request.method
    2.获取请求提交的数据
        1.get
            request.GET['name']
        2.post
            request.POST['name']
    3.获取请求消息头
        request.META
        request.META.HTTP_REFERER
    4.提交post请求
        Django对post请求需要进行一个 csrf 验证
        解决方案:
            1.增加 {% csrf_token %} 标签
            2.删除 csrf 相关的中间件
            3.将 @csrf_protect 添加到视图处理函数上
3.使用 forms 模块
    1.使用 forms 模块
        1.创建 forms.py
        2.导入 forms 模块
            from django import forms
        3.创建 class,一个class对应着一个表单
            class ClassName(forms.Form):
                属性 :每一个属性会生成一个表单控件
                
                forms.CharField()
                forms.EmailField()
                forms.IntegerField()
                ... ...
    2.在模板中 解析 form 对象
        0.注意
            1.创建表单 - <form></form>
            2.自定义按钮
        1.手动解析
            form = XXXForm()
            return render(request,'xxx.html',locals())

            xxx.html : 
                {% for field in form %}
                    { {field}} : 表示的是一个控件
                    { {field.label}} : 表示的是label参数值
                {% endfor %}
        2.自动解析
            { {form.as_p}}
            { {form.as_ul}}
            { {form.as_table}}
    3.视图中通过 forms.Form 接收表单数据
        1.通过 forms.Form的构造器接收数据
            form = XXXForm(request.POST)
        2.需要让 form 通过验证后 ,再取值
            form.is_valid()
                True:通过所有验证
                False:未通过验证
        3.获取表单数据
            form.cleaned_data


1.forms模块

  1. forms模块的高级处理
    将Models 和 Forms 结合到一起使用
    1. 在 forms.py 中创建class,继承自 forms.ModelForm
    2. 创建内部类 Meta,去关联 Model
      1. model:指定要关联的实体类
      2. fields:指定从Model中取哪些字段生成控件
        1. 取值 '__all__
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值