首页
学习
活动
专区
圈层
工具
发布

在 Django 表单中传递自定义表单值到视图

在Django中,我们可以通过表单的初始化参数initial来传递自定义的初始值给表单字段。如果我们想要在视图中设置表单的初始值,可以在视图中创建表单的实例时,传递一个字典给initial参数。...1、问题背景我们遇到了这样一个问题:在使用 Django 表单时,我们希望将自定义表单中的值传递到视图中。然而,我们发现无法为多选选项的每个选项传递值。...在渲染表单时,只有一个字符字段,而多选框中有多个选择。我们想知道是否有办法解决这个问题,以及表单集是否可以在这里提供帮助。我们对 Django 还很陌生,因此希望得到一些解释,以便更好地理解和学习。...'}) 方法二:使用表单集另一种解决方案是使用表单集。...表单集允许我们创建一组类似的表单,每个表单都可以处理单个对象。在我们的例子中,我们可以创建一个表单集来处理每个 StateOptionOutcome 对象。

3.5K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Django 后台自定义表单控件

    在 django 中我们可以在 admin.py 中添加 ModelAdmin,这样就能很方便地在后台进行增删改查的操作。...其实 django 已经为我们提供了一些可用的表单控件,比如:多选框、单选按钮等,下面就以单选按钮为例: # forms.py from django import forms from .models...用来指定控件的类型,choices 指定可选列表,再在 MyAdmin 中的 form 指定为自定义表单即可。...在 django 中已经提供了很多 widget(控件),然而这些还远远满足不了我们的需求,这就需要我们去自定义,下面就以一个 ACE 插件 (ACE 是一个独立的 JavaScript 编写的基于 Web...在 forms.py 中将自定义的控件 AceWidget 引入: #coding: utf-8 from django import forms from .models import Code from

    2.2K20

    如何使用 Django Forms 创建表单?

    这篇文章围绕如何使用各种表单字段和属性创建基本表单。在 Django 中创建表单与创建模型完全相似,需要指定表单中存在哪些字段以及类型。...在您的极客应用程序中创建一个名为 forms.py 的新文件,您将在其中制作所有表单。要创建 Django 表单,您需要使用Django Form Class。让我们演示一下。...在你的 forms.py 中输入以下内容, 让我们解释一下到底发生了什么,左侧表示字段的名称,在右侧,您相应地定义了输入字段的各种功能。...在视图中,只需在 forms.py 中创建上面创建的表单类的一个实例。...在模板中,以下将修改输入为, {{ form.as_table }}会将它们呈现为包裹在 标签中的表格单元格 {{ form.as_p }}会将它们呈现在 标签中 {{ form.as_ul }}

    1.5K10

    5 分钟,带你快速入门 Django 文件上传下载

    在 index App 下创建一个 templates 文件夹,然后在项目配置文件 settings.py 中配置 App 及模板目录 # settings.py # 配置App INSTALLED_APPS...}, ] 2-3 创建文件模型,并映射到数据库 以默认的 sqlite 为例,在 index App 下的 models.py 中自定义一个代表文件的模型 该模型包含 3 个字段: 文件名称 文件保存路径...2 条命令,将模型结构映射到数据库中 # 数据库映射 Python3 manage.py makemigrations python3 manage.py migrate 2-4 自定义表单控件...在 index App 下创建一个表单文件 forms.py 在内部自定义一个表单类,继承于 forms.Form # index App forms.py from django import...index App 下的 views.py 中编写上传功能的视图函数 需要注意的是,我们需要提前在项目根目录创建一个 upload 文件夹,用于存放上传的文件 # index App views.py

    1.3K21

    django入门:Admin管理系统及表单(干货)

    admin 主界面 当然,django 自带的 admin 管理系统不止那么点功能,接着我们通过定义一些参数,来定制 admin 界面 自定义 admin # 在使用后台管理的时候,可能需要自己定制...方式) 1.在应用文件夹下创建 forms.py 文件存放表单 from django import forms from .models import Post # 表单类必须继承 forms.ModelForm...提交表单错误 不存在对应模型(POST 方式) 1.在 forms.py 中创建表单 # 假设有个信息反馈的表单 class ContractForm(forms.Form): subject...message = forms.CharField(widget=forms.Textarea(attrs={'clos': 80, 'rows': 20})) # 自定义校验规则,以...提交反馈错误 类似搜索的表单(GET) 1.创建表单视图 def search(request): # 获取到用户提交的搜索关键词,字典的键值同模版中的 name 属性值 q = request.GET.get

    4.1K21

    Django 学习笔记之表单

    如果你想把数据提交到原来的页面,action 的值为空就行,即 action="" method 属性:规定提交表单时所用的 HTTP 方法,一般选择 GET 或者 POST。...target 属性:规定 action 属性中地址的目标(默认:_self)。如果填写值 _blank ,当点击按钮提交数据时,在新窗口中打开新的页面。 常用表单元素有以下这些: 属性中的值来获取用户输入的内容的。以 GET 方式请求为例,有个单行输入框定义 name="q"。当你在输入框中填写值 moneky 然后提交。...譬如:Model 中的某些属性我不需要显示在页面上,或数据处理方式比较复杂,这个时候你就需要自定义 Form。自定义 Form 是直接继承 Form。...除此之外,还可以 form 还支持自定义。具体实现是你获取到 form 中每个属性,然后逐一渲染指定样式。 所以 author.html 经过调整之后的代码如下: <!

    3.5K30

    登录注册小案例实现(使用Django中的form表单来进行用户输入数据的校验)

    forms.py的文件,放在指定的app当中,然后在里面写表单....在表单中,创建字段跟模型是一模一样的,但是没有null=True或者blank=True等这几种参数了,有的参数是required=True/False....使用is_valid()方法可以验证用户提交的数据是否合法,而且HTML表单元素的name必须和django中的表单的name保持一致,否则匹配不到....(比如此例中request.POST获取的HTML表单元素的name属性值与form表单中的name是一样的:username,password) is_bound属性:用来表示form是否绑定了数据,...(2)在本案例中实战使用这个form表单: 在此名为mucis的app下创建forms.py的文件,编写表单校验(用户登录和注册的数据校验): from django import forms from

    6.2K00

    Django小技巧10: 自定义认证策略

    翻译整理自: simpleisbetterthancomplex.com Django 内置了一套功能极全的认证系统,而且可以很容易的进行自定义, 本章的内容就是自定义认证策略。...对于内置的login视图,Django 使用django.contrib.auth.forms.AuthenticationForm来处理身份验证过程。...Django 可以通过AuthenticationForm的confirm_login_allowed(user)方法, 轻松添加自定义认证....假设你想通过双重的电子邮件认证, 只有用户点击确认邮件后才可以登录,那么你可以这样做: forms.py Python from django import forms from django.contrib.auth.forms...你可以在confirm_login_allowed添加任何的代码策略, 需要注意的是, 如果认证失败仅能抛出ValidationError才可以正常工作.

    87130

    Django学习笔记之Django Form表单详解

    知识预览 构建一个表单 在Django 中构建一个表单 Django Form 类详解 使用表单模板 回到顶部 构建一个表单 假设你想在你的网站上创建一个简单的表单,以获得用户的名字。...2 方便地限制字段条件 回到顶部 在Django 中构建一个表单 Form 类 我们已经计划好了我们的 HTML 表单应该呈现的样子。...在Django 中,我们的起始点是这里: #forms.py from django import forms class NameForm(forms.Form): your_name...如果is_valid()为True,我们将能够在cleaned_data 属性中找到所有合法的表单数据。...字段详解 考虑一个比上面的迷你示例更有用的一个表单,我们完成一个更加有用的注册表单: #forms.py from django import forms class RegisterForm(forms.Form

    5.8K10

    Django基础篇-form表单

    django 中的表单不是 html 中的那个表单,这个表单是用来验证数据的合法性的一个东西,也可以生成 html 代码。...使用表单 创建一个 forms.py 的文件,放在指定的 app 当中,然后在里面写表单。 表单是通过类实现的,继承自 forms.Form,然后在里面定义要验证的字段。...在表单中,创建字段跟模型是一模一样的,但是没有 null=True 或者 blank=True 等这几种参数了,有的参数是 required=True/False。...使用 is_valid() 方法可以验证用户提交的数据是否合法,而且 html 表单元素的 name 必须和 django 中的表单的 name 保持一致,否则匹配不到。...cleaned_data:这个是在 is_valid() 返回 True 的时候,保存用户提交上来的数据。

    68620

    Django搭建博客(七):form的使用

    一、form的作用 将表单抽离页面 方便数据的处理,可以通过 is_vaild() 来判断数据的有效性 可以自定义表单样式,相当于 vue.js里的组件,使用更加方便 可重用 二、form的使用 在应用目录下新建文件...forms.py ,添加如下代码: from django import forms class TestForm(forms.Form): name = forms.CharField(...return HttpResponse(str(data)) else: return HttpResponse('数据格式错误') 当为...get请求时返回表单页面,当为 post请求的时候,将表单数据作为 TestForm 类的初始化数据,然后检查数据有效性,若数据格式正确则返回提交的数据,否则返回错误信息。...三、自定义 form样式 我们通过重载 Input 类来定义一个布局类,在这个类中我们可以设置输入框的 type,还有输入框的模板,看看下面这个例子: from django.forms import

    77230

    Django学习之旅(五)

    1)在你的Application文件夹下新建一个 forms.py 文件 ? CharField 代表是字符字段,它是 forms 内置的字符。...想到了解更多的字段,可以去看下Django源码中django.forms.fields这个文件。 然后label这个有什么用呢?我想卖个关子,等会你就知道了。...这是Django提供的防止伪装提交请求的功能。POST方法提交的表格,必须有此标签。 4)在 urls.py 中对应写上这个函数 ?...5)运行测试 使用浏览器访问 127.0.0.1:8000/forms/ 这页面。你会发现:呀!居然有输入框。我们在 forms.html 中并没有添加相对应标签和输入框啊。...注意request.FILES 只有在请求方法为POST,并且发送请求的 拥有enctype="multipart/form-data" 属性时,才会包含数据。否则request.FILES 为空。

    84910
    领券