思南

zcx1906@163.com
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
from django import forms
from django.forms import fields

class UserForm(forms.Form):
    user = fields.CharField()
    pwd = fields.CharField()
dform部分
from django.shortcuts import render,HttpResponse

# Create your views here.
from app01.dforms import UserForm

def home(req):
    if req.method == 'GET':
        obj = UserForm()
        return render(req,'home.html',locals())
    if req.method == 'POST':
        print('post')
        obj = UserForm(req.POST)
        if obj.is_valid():
            n1 = obj.cleaned_data['user']
            n2= obj.cleaned_data['pwd']
            print(n1,n2)
            return HttpResponse('6666')
        else:
            return render(req, 'home.html', locals())

####
# obj.user.objects.create(**obj.cleaned_data)直接创建数据 字段需要跟数据库一样
####
views部分
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <form action="/home1" method="post" novalidate>
        {{ obj.user }}{{ obj.user.errors.0 }}
        {{ obj.pwd }}{{ obj.pwd.errors.0 }}
        <input type="submit" value="提交">
    </form>
</body>
</html>
前端部分
from django import forms
from django.forms import fields

class UserForm(forms.Form):
    user = fields.CharField(
        required=True,
        max_length=32,
        min_length=6,
        error_messages={}

    )
    pwd = fields.CharField()

# 前端{{obj.as_table}}可以直接生成标签 但样式不好调
字段示例,直接生成标签
   # from django.utils.safestring import mark_safe
        # txt = mark_safe(txt)
        return render(request,'test.html'{'obj':obj,'txt':txt})

前端:
{{txt}}
marksafe生成标签