Python 教程之 Django(3)表格

简介: Python 教程之 Django(3)表格

创建 Form 类时,最重要的部分是定义窗体的字段。每个字段都有自定义验证逻辑,以及其他一些挂钩。本文围绕可以在表单中使用的各种领域以及与Django表单相关的各种功能和技术。表单基本上用于以某种方式从用户那里获取输入,并将该信息用于数据库上的逻辑操作。例如,通过将输入作为用户的姓名,电子邮件,密码等来注册用户。

Django 将 Django 表单中定义的字段映射到 HTML 输入字段。Django处理表单中涉及的工作的三个不同部分:

  • 准备和重组数据,使其准备好进行渲染
  • 为数据创建 HTML 表单
  • 接收和处理来自客户的提交表格和数据

请注意,Django表单完成的所有类型的工作都可以使用高级HTML内容来完成,但是Django使它变得更容易和高效,尤其是验证部分。一旦你掌握了Django表单,你就会忘记HTML表单。

语法: Django字段的工作方式类似于 Django 模型字段,并具有以下语法:

field_name = forms.FieldType(**options)

例:

from django import forms
# 创建表单
class GeeksForm(forms.Form):
  title = forms.CharField()
  description = forms.CharField()

使用 Django 表格

要使用Django Forms,需要有一个项目和一个应用程序在其中工作。启动应用程序后,您可以在应用程序/表单中创建表单.py。在开始使用表单之前,让我们检查一下如何启动项目并实现Django表单。

创建一个 Django 表格

在Django中创建表单与创建模型完全相似,需要指定表单中存在哪些字段以及什么类型。例如,要输入,注册表单可能需要名字(字符字段),卷号(整数字段)等。

语法:

arduino

from django import forms
class FormName(forms.Form):
         # 每个字段都将在 HTML 中映射为输入字段
        field_name = forms.Field(**options)

要创建表单,请在极客/表单中.py输入代码,

# 从内置库导入标准 Django 表单
from django import forms
# 创建表单
class InputForm(forms.Form):
  first_name = forms.CharField(max_length = 200)
  last_name = forms.CharField(max_length = 200)
  roll_number = forms.IntegerField(
          help_text = "Enter 6 digit roll number"
          )
  password = forms.CharField(widget = forms.PasswordInput())

渲染 Django 表格

Django表单字段有几个内置的方法来简化开发人员的工作,但有时需要手动实现一些东西来自定义用户界面(UI)。表单附带了3个内置方法,可用于呈现Django表单字段。

  • {{ form.as_table }} 将把它们呈现为包装在  标记中的表格单元格
  • {{ form.as_p }} 将使它们包装在

    标记中

  • {{ form.as_ul }} 将使它们包装在
  • 标记中

若要将此窗体呈现为视图,请转到 views.py 并创建home_view如下所示。

from django.shortcuts import render
from .forms import InputForm
# 在此处创建您的视图。
def home_view(request):
  context ={}
  context['form']= InputForm()
  return render(request, "home.html", context)

在视图中,只需创建上面在 forms.py 中创建的表单类的实例即可。现在,让我们>主页编辑模板.html

<form action = "" method = "post">
  {% csrf_token %}
  {{form }}
  <input type="submit" value=Submit">
</form>

现在,请访问 http://localhost:8000/

image.png


目录
相关文章
|
4月前
|
数据采集 存储 XML
Python爬虫技术:从基础到实战的完整教程
最后强调: 父母法律法规限制下进行网络抓取活动; 不得侵犯他人版权隐私利益; 同时也要注意个人安全防止泄露敏感信息.
802 19
|
3月前
|
索引 Python
Python 列表切片赋值教程:掌握 “移花接木” 式列表修改技巧
本文通过生动的“嫁接”比喻,讲解Python列表切片赋值操作。切片可修改原列表内容,实现头部、尾部或中间元素替换,支持不等长赋值,灵活实现列表结构更新。
156 1
|
4月前
|
数据采集 存储 JSON
使用Python获取1688商品详情的教程
本教程介绍如何使用Python爬取1688商品详情信息,涵盖环境配置、代码编写、数据处理及合法合规注意事项,助你快速掌握商品数据抓取与保存技巧。
|
5月前
|
并行计算 算法 Java
Python3解释器深度解析与实战教程:从源码到性能优化的全路径探索
Python解释器不止CPython,还包括PyPy、MicroPython、GraalVM等,各具特色,适用于不同场景。本文深入解析Python解释器的工作原理、内存管理机制、GIL限制及其优化策略,并介绍性能调优工具链及未来发展方向,助力开发者提升Python应用性能。
354 0
|
5月前
|
数据采集 索引 Python
Python Slice函数使用教程 - 详解与示例 | Python切片操作指南
Python中的`slice()`函数用于创建切片对象,以便对序列(如列表、字符串、元组)进行高效切片操作。它支持指定起始索引、结束索引和步长,提升代码可读性和灵活性。
|
存储 安全 API
【Python 基础教程 21】Python3 文件操作全面指南:从入门到精通的综合教程
【Python 基础教程 21】Python3 文件操作全面指南:从入门到精通的综合教程
443 0
|
数据可视化 IDE 开发工具
【Python篇】PyQt5 超详细教程——由入门到精通(中篇二)
【Python篇】PyQt5 超详细教程——由入门到精通(中篇二)
1032 13
|
监控 数据可视化 搜索推荐
【Python篇】matplotlib超详细教程-由入门到精通(下篇)2
【Python篇】matplotlib超详细教程-由入门到精通(下篇)
285 9
|
数据可视化 API 数据处理
【Python篇】matplotlib超详细教程-由入门到精通(上篇)
【Python篇】matplotlib超详细教程-由入门到精通(上篇)
1165 5
|
数据可视化 IDE Linux
【Python篇】PyQt5 超详细教程——由入门到精通(序篇)
【Python篇】PyQt5 超详细教程——由入门到精通(序篇)
2752 3