tengke 发表于 2023-6-14 18:58:03

验证码

本帖最后由 tengke 于 2023-6-16 11:57 编辑

class Logina(forms.Form):
    username= forms.CharField(label="用户名",
                              widget=forms.TextInput(attrs={"class":"form-control","maxlength":"12","placeholder":"请输入用户名","autocomplete":"off"}))
    password =forms.CharField(label="密码",
                              widget=forms.PasswordInput(attrs={"class":"form-control","maxlength":"12","placeholder":"请输入密码","autocomplete":"off"}))
    yzm = forms.CharField(label="验证码",
                        widget=forms.PasswordInput(attrs={"class": "form-control", "maxlength": "12", "placeholder": "验证码","autocomplete": "off"}))
    def clean(self):
      cleaned_data = super().clean()
      pwd = md5(cleaned_data.get("password"))
      print(pwd,"clean的密码")
      cleaned_data["password"] = pwd
      return cleaned_data

____
def yzm(request):
    img,code_staing = check_code()
    print(code_staing)
    #写入到自己的session中
    request.session['image_code']=code_staing
    #图片60秒超时
    request.session.set_expiry(60)
    stream = BytesIO()
    img.save(stream, 'png')
    # stream.getvalue()
    returnHttpResponse(stream.getvalue())

_________
def login(request):
    if request.method == "GET":
      form = Logina()
      return render(request,"login.html",{"form":form})
    form = Logina(data=request.POST)
    print(form.is_valid(),"formis")
    print(form.errors.as_json())
    # print(form,"from 字段属性")
    if form.is_valid():
      # print(form.cleaned_data)
      # pd = models.admin.objects.filter(username=form.cleaned_data["username"],password=form.cleaned_data["password"])
      pd = models.admin.objects.filter(**form.cleaned_data).first()
      print(form.cleaned_data,"cleaned_data")
      print(form.cleaned_data['yzm'])


    print(form.errors.as_json())这个打印出来的是
{"yzm": [{"message": "\u8fd9\u4e2a\u5b57\u6bb5\u662f\u5fc5\u586b\u9879\u3002", "code": "required"}]}

麻烦大佬看看这个

歌者文明清理员 发表于 2023-6-14 19:12:09

所以你的问题是啥

tengke 发表于 2023-6-15 11:46:33

并且我查看 session 数值为空
页: [1]
查看完整版本: 验证码