Django中Forms的使用代码解析

yipeiwu_com5年前Python基础

本文研究的主要是Django中Forms的使用,具体如下。

创建文件do.html

{% extends 'base.html' %} 
 
{% block mainbody %} 
   
  <form action="/app1/do/" method="post"> 
    {% csrf_token %} 
    {{ form.as_p }} 
    <input type="submit" value="Submit"> 
  </form> 
 
{% for item in student %} 
  <p>{{ item.id }}, {{ item }}</p> 
{% endfor %} 
 
{% endblock %} 

在urls.py中添加路径:

url(r'^do/', 'app1.views.do'),

在views.py中定义do函数

from django.shortcuts import render 
from django.core.context_processors import csrf 
from app1.models import Student 
from django import forms 
 
def do(request): 
  context = {} 
  context.update(csrf(request)) 
  if request.POST: 
    form = StudnetForm(request.POST) 
    if form.is_valid(): 
      name = form.cleaned_data['name'] 
      student = Student(name = name) 
      student.save() 
  form = StudnetForm() 
  context = {} 
  context.update(csrf(request)) 
  student_list = Student.objects.all() 
  context['student'] = student_list 
  context['form'] = form  
  return render(request, 'do.html', context) 

现在的数据库里面有四条数据:

访问 http://localhost:8000/app1/do/

可以看到

然后添加Name:

可以看到数据添加到了数据库中:

可以定义多个Form 只需要在view和template中的对应即可,具体的Form的使用可以查看Form的API ,官方网址:https://docs.djangoproject.com/en/1.8/ref/forms/api/

总结

总的来说,Django是一个非常优秀的框架,用起来方便,许多公司招聘Python也都要求懂一些Django。

以上就是本文关于Django中Forms的使用代码解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

详解Python是如何实现issubclass的

使用Python内置的issubclass方法很方便的检测一个类是否是另一个类的子类。 这个是issubclass的文档: issubclass(class, classinfo) R...

使用Python的Treq on Twisted来进行HTTP压力测试

从事API相关的工作很有挑战性,在高峰期保持系统的稳定及健壮性就是其中之一,这也是我们在Mailgun做很多压力测试的原因。 这么久以来,我们已经尝试了很多种方法,从简单的ApacheB...

Python实现去除代码前行号的方法

本文实例讲述了Python实现去除代码前行号的方法。分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下:# -*- coding: utf-8 -*- import wx cl...

Python函数嵌套实例

在Python中函数可以作为参数进行传递,而也可以赋值给其他变量(类似Javascript,或者C/C++中的函数指针); 类似Javascript,Python支持函数嵌套,Javas...

PyQt5每天必学之布局管理

PyQt5每天必学之布局管理

在GUI编程中有一个不容忽视的部分,那就是布局管理。布局管理掌控着我们的控件在应用程序窗口如何摆放。布局管理可以通过两种方式来完成。我们可以使用绝对定位或布局类两种方法控制程序窗口中的控...