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

相关文章

Django1.3添加app提示模块不存在的解决方法

使用Django添加应用的时候,一直提示Error: No module named myapp。意思是找不到这个名字的应用,可是我已经startapp成功,并且系统已经创建相应的目录...

Pycharm无法使用已经安装Selenium的解决方法

Pycharm无法使用已经安装Selenium的解决方法

电脑C盘安装python27的时候也安装了selenium,但是最近刚刚使用工具Pycharm,新建工程后,然后建立.py文件后,使用语句:from selenium.webdriver...

Python字符串和文件操作常用函数分析

本文实例分析了Python字符串和文件操作常用函数。分享给大家供大家参考。具体如下: # -*- coding: UTF-8 -*- ''' Created on 2010-12-2...

Python编程中的文件操作攻略

Python编程中的文件操作攻略

open函数 你必须先用Python内置的open()函数打开一个文件,创建一个file对象,相关的辅助方法才可以调用它进行读写。 语法: file object = open(f...

Python实现配置文件备份的方法

本文实例讲述了Python实现配置文件备份的方法。分享给大家供大家参考。具体如下: 这里平台为Linux: #!/usr/bin/python #Author:gdlinjianyi...