首页>>后端>>Python->django怎么生成实时form(2023年最新整理)

django怎么生成实时form(2023年最新整理)

时间:2023-12-20 本站 点击:0

导读:本篇文章首席CTO笔记来给大家介绍有关django怎么生成实时form的相关内容,希望对大家有所帮助,一起来看看吧。

如何利用Django的Form类动态生成下拉列表

有两种方法。

一、自己手动写 html 模板中的 form ... /form 

在views 中,将所需要的数据传递过去,比如 names_list = [1, 2, 3, 4]

在 html 中

select

  {% for x in name_list %}

      option value ="{{ x }}"{{ x }}/option

  {% endfor %}

/select

二、使用 Form 自动生成表单

这就需要在 views 中 动态初始化表单

具体的内容自己查 相应版本的 django文档去

内容在“Forms”中。

最后给你个建议吧。好好看文档去,在这提问等答案的功夫,不知能看多少文档。

学习从来都是自己的事情,多看多读多思考,实在不会再去问。

我是怎么做到使用django动态定义表单的

在远标了解过如果Django的form或者model定义比较完善的话,可以动态生成表单,但是在今天这个Ajax的时代,后端自动生成的表单,往往交互体验有限,企业快速应用用这个玩玩倒不错,真正做产品不推荐这么做。

如何正确使用 Django Forms

首先你要创建自己的Form类,继承于django的Form,

然后创建form中的字段,例子如下:

from django import forms

class AuthenticationForm(forms.Form):

"""

Base class for authenticating users. Extend this to get a form that accepts

username/password logins.

"""

username = forms.CharField(label=_("Username"), max_length=254)

password = forms.CharField(label=_("Password"), widget=forms.PasswordInput)

error_messages = {

'invalid_login': _("Please enter a correct username and password. "

"Note that both fields may be case-sensitive."),

'no_cookies': _("Your Web browser doesn't appear to have cookies "

"enabled. Cookies are required for logging in."),

'inactive': _("This account is inactive."),

}

如果你英文还可以,可以直接看官方文档,最权威的:

前端动态增加Field,该怎样创建Form模型

 1. formsets是同一个model的组合,而这里是两个model,(Book和Author)

2. django的form如果用后台渲染的话,是在生成form的时候就确定了form里面的字段,哪怕是动态生成,而这里的需求是前台(js)动态修改form里面的字段(增删字段)

目前我的解决方案是 自己写html模板,已经放弃了form表单,然后ajax传入后台,自己解析,保存。

结语:以上就是首席CTO笔记为大家介绍的关于django怎么生成实时form的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Python/46083.html