Django中Forms的使用代码解析

yipeiwu_com6年前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的使用代码解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

Flask框架学习笔记之模板操作实例详解

Flask框架学习笔记之模板操作实例详解

本文实例讲述了Flask框架学习笔记之模板操作。分享给大家供大家参考,具体如下: flask的模板引擎是Jinja2。 引入模板的好处是增加程序的可读性和易维护性,从而不用将一堆html...

详解pandas库pd.read_excel操作读取excel文件参数整理与实例

详解pandas库pd.read_excel操作读取excel文件参数整理与实例

除了使用xlrd库或者xlwt库进行对excel表格的操作读与写,而且pandas库同样支持excel的操作;且pandas操作更加简介方便。 首先是pd.read_excel的参数:函...

Python 统计字数的思路详解

 问题描述: 用 Python 实现函数 count_words(),该函数输入字符串 s 和数字 n,返回 s 中 n 个出现频率最高的单词。返回值是一个元组列表,包含出现次...

pandas 时间格式转换的实现

OUTLINE  常见的时间字符串与timestamp之间的转换 日期与timestamp之间的转换 常见的时间字符串与timestamp之间的转换 这里说的字符串不是一般意...

Python实现的多进程和多线程功能示例

本文实例讲述了Python实现的多进程和多线程功能。分享给大家供大家参考,具体如下: 听了朋友说起,他们目前开发的测试框架,用python实现的分布式系统。虽然python的执行效率没有...