Django Form 实时从数据库中获取数据的操作方法

作者:klvchen 时间:2024-01-23 14:35:54 

Django Form 实时从数据库中获取数据 ,具体内容如下所示:

修改 models.py 添加


class UserType(models.Model):
caption = models.CharField(max_length=32)

执行命令,生成数据库


python manage.py makemigrations
python manage.py migrate

修改 forms.py 添加


from app01 import models
class DBForm(DForms.Form):
host = fields.CharField()
host_type = fields.IntegerField(
 widget=widgets.Select(choices=[])
)
def __init__(self, *args, **kwargs):
 super(DBForm, self).__init__(*args, **kwargs)
 self.fields['host_type'].widget.choices = models.UserType.objects.all().values_list('id', 'caption') # 自定义构造方法,实时从数据库中获取数据

Django Form 实时从数据库中获取数据的操作方法

PS:Django从表单中获取数据

提交了表单后,我们需要从获取表单中的数据


#views.py
def index(request):
if request.method == "GET":
 nameform = NameModelForm()
 return render(request, "form/index.html",locals())
if request.method == "POST":
 nameform = NameModelForm(request.POST)
 if nameform.is_valid():
  firstname = nameform.cleaned_data["firstname"]
  secondname = nameform.cleaned_data["secondname"]
  a = Name(firstname = firstname,secondname = secondname)
  a.save()
  print(firstname+secondname)
  return HttpResponse("提交成功")
 else:
  error_msg = nameform.errors.as_json()
  print(error_msg)
  return HttpResponse(error_msg)

首先引入了自定义的表单类

如果request.method == “GET”

然后实例化表单类,render返回

如果request.method == “POST”

就先实例化接受了POST消息的表单类

如果表单类的数据是可获取的

我们使用一个变量接收nameform.cleaned.cleaned_data[“firstname”],就是从表单的firstname字段获取的信息。然后提交给数据库。这样就完成了一次提交记录表单的操作。

总结

以上所述是小编给大家介绍的Django Form 实时从数据库中获取数据的操作方法,网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

来源:https://www.cnblogs.com/klvchen/archive/2019/07/25/11239872.html

标签:django,form,获取数据
0
投稿

猜你喜欢

  • ERROR CODE: 1175 YOU ARE USING SAFE UPDATE MODE AN

    2024-01-17 21:57:50
  • 浅谈mysql可有类似oracle的nvl的函数

    2024-01-28 08:49:37
  • MS SQL7.0的数据迁移到MySQL上的一种方法

    2008-11-01 16:59:00
  • 解读pandas.DataFrame.corrwith

    2023-10-17 13:22:09
  • python  Matplotlib绘图直线,折线,曲线

    2023-01-12 13:44:09
  • 首页访问感受提升三步曲

    2007-12-13 20:36:00
  • Python实现名片管理系统

    2022-01-11 21:45:12
  • 解决flask接口返回的内容中文乱码的问题

    2022-12-17 03:00:37
  • 解决SQL Server的“此数据库没有有效所有者”问题

    2024-01-16 22:21:58
  • javascript中不易分清的slice,splice和split三个函数

    2024-04-28 09:37:29
  • MySQL外键设置的方法实例

    2024-01-19 14:10:42
  • Django Auth用户认证组件实现代码

    2022-05-02 18:06:01
  • MySQL基础教程之事务异常情况

    2024-01-15 06:12:20
  • Python中22个万用公式的小结

    2022-12-15 21:06:38
  • pycharm 使用tab跳出正在编辑的括号(){}{}等问题

    2023-06-14 03:17:55
  • matlab 生成.bmp格式的文件

    2022-08-06 09:39:09
  • 返回页面顶部top按钮通过锚点实现(自写)

    2024-04-10 10:47:23
  • SQL Server误区30日谈 第28天 有关大容量事务日志恢复模式的误区

    2024-01-19 23:08:55
  • MySQL中如何正确存储IP地址

    2024-01-29 13:34:34
  • vue项目中api接口管理总结

    2024-04-30 10:42:44
  • asp之家 网络编程 m.aspxhome.com