【python】-- Django Form

Django  Form

Django的Form主要具有一下几大功能:

  • 生成HTML标签
  • 验证用户数据(显示错误信息)
  • HTML Form提交保留上次提交数据
  • 初始化页面显示内容(自定义样式)

一、Form 简单示例:

1、view中创建Form类并进行函数处理

class FM(forms.Form):
    user = fields.CharField()
    pwd = fields.CharField()
    email = fields.EmailField()

def fm(request):
    if request.method == "GET":
        obj = FM()
        return render(request, ‘fm.html‘, {‘obj‘: obj})
    elif request.method == "POST":
        # 获取用户所有数据
        # 每条数据请求的验证
        # 成功:获取所有的正确的信息
        # 失败:显示错误信息
        obj = FM(request.POST)  # 生成from表单验证对象实例
        r1 = obj.is_valid()   # 获取obj对象是否有效
        if r1:
            # obj.cleaned_data
            print(r1)
            print(obj.changed_data)

        else:
            print(r1)
            print(obj.errors.as_json())
            # 错误信息字典形式
            #  {"user": [{"message": "This field is required.", "code": "required"}],
            #  "pwd": [{"message": "This field is required.", "code": "required"}],
            #  "email": [{"message": "This field is required.", "code": "required"}]}
            print(obj.errors[‘user‘][0])
        return redirect("/fm/")

2、生成HTML.

原文地址:https://www.cnblogs.com/Keep-Ambition/p/8973287.html

时间: 2024-09-30 00:14:13

【python】-- Django Form的相关文章

【Python】Django Model 怎么使用 UUID 作为主键?

>>> import uuid print uuid.uuid3(uuid.uuid1(), 'python.org') >>> # make a UUID based on the host ID and current time >>> uuid.uuid1() UUID('a8098c1a-f86e-11da-bd1a-00112444be1e') >>> # make a UUID using an MD5 hash of a

【Python】Django数据模型、级联删除、级联更新、ER图导出等

在本文中,我们将向读者详细介绍如何在更新和删除父表数据的同时,触发有关子表数据的级联更新和删除操作.您将看到当使用InnoDB表的时候,借助于外键约束就可以轻松搞定这一过程. 一.利用外键约束更新并删除MySQL中的数据 我们知道,开发能够维护多个表的完整性的数据库驱动的应用程序是一件非常复杂的事情--即使应用程序所面对的是当前最流行的开源关系型数据库管理系统MySQL服务器时也不例外.如果一个应用程序必须处理多个数据库表,而这些表之间有存在着某些预定义的关系,这时一旦父表中的数据被更新或者删除

【python】Django web项目部署(Nginx+uwsgi)

一.安装uwsgi 通过pip安装uwsgi. pip install uwsgi 测试uwsgi,创建test.py文件: def application(env, start_response):     start_response('200 OK', [('Content-Type','text/html')])     return [b"Hello World"] 通过uwsgi运行该文件. uwsgi --http :8001 --wsgi-file test.py 常用

【python】-- Django路由系统(网址关系映射)、视图、模板

Django路由系统(网址关系映射).视图.模板 一.路由系统(网址关系映射) 1.单一路由对应: 一个url对应一个视图函数(类) urls.py: url(r'^test', views.test), #url(r'^home', views.Test.as_view()), views.py: def test(request): print(request.method) return render(request, "home.html") """

【Python】Django 支持 restful 风格 url

URL通配符示例: url(r'^file_download/(?P<filename>(.)*)$', views.FILE_DOWNLOAD_VIEW.as_view()), 代码示例: def get(self, request, filename): from common.s3_storage import S3_STORAGE s3_storage = S3_STORAGE() key = s3_storage.package_bucket.get_key(filename) as

【Python】Django 时间字段 最佳实践

Model定义: class Test(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=128, unique=True, db_index=True) #create_time = models.DateTimeField(auto_now_add=True, db_index=True) #update_time = models.DateTimeField(a

【Python】Django auth 修改密码如何实现?

使用示例1.创建用户>>> from django.contrib.auth.models import User>>> user = User.objects.create_user('john', '[email protected]', 'johnpassword')# At this point, user is a User object that has already been saved# to the database. You can continu

【Python】Django filter 如何支持 or 条件过滤?

from django.db.models import Q Item.objects.filter(Q(creator=owner) | Q(moderated=False)) 代码示例: if(request.GET.has_key('search')): search = request.GET.get('search') logger.info(search) from django.db.models import Q jobs_set = models.Deploy.objects.

【python】-- Django 中间件、缓存、信号

Django  中间件.缓存.信号 一. Django  中间件 django 中的中间件(middleware),在django中,中间件其实就是一个类,在请求到来和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法. 在django项目的settings模块中,有一个 MIDDLEWARE_CLASSES 变量,其中每一个元素就是一个中间件: MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', '