django-表单之模型表单(三)
时间:2022-07-23
本文章向大家介绍django-表单之模型表单(三),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
models.py-->forms.py-->views.py(get)--index.html-->views.py(post)-->home.html
urls.py
from django.urls import path
from . import views
urlpatterns = [
path('',views.index,name="index"),
path('register/',views.IndexForms.as_view(),name='register'),
path('student/',views.IndexStudent.as_view(),name='student'),
]
models.py
from django.db import models
class Student(models.Model):
#字段映射,数据库中是male,female,后台显示的是男,女
choices={
('male',"男"),
('female','女'),
}
#创建数据库中的字段
name=models.CharField(verbose_name='姓名',max_length=20,unique=True)
age=models.CharField(verbose_name='年龄',max_length=10)
gender=models.CharField(verbose_name='性别',max_length=10,choices=choices,default='male')
is_deleted=models.BooleanField(verbose_name='是否删除',default=False)
introduce=models.TextField(verbose_name='介绍')
def __str__(self):
return self.name
class Meta:
# verbose_name_plural='新闻'
# verbose_name="新闻列表"
#修改排列的顺序,这句是靠id从大到小排序
ordering=['-id']
db_table = 'student'
forms.py
from django import forms
from .models import Student
class StudentForms(forms.ModelForm):
class Meta:
model=Student
# fields='__all__'
# exclude=['is_deleted']
fields=['name','age']
views.py
from django.views import View
from .models import Student
from .forms import RegisterForms,StudentForms
class IndexStudent(View):
def get(self,request):
forms=StudentForms()
return render(request,'index.html',{'forms':forms})
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{{title}}</title>
<link rel="stylesheet" href={% static 'css/index.css' %}>
</head>
<body>
<div class="content">
<form action="" method="post">
<table>
<!--as_p,as_ul-->
{{forms.as_table}}
<tr>
<td><input type="submit" value="submit" name="submit"></td>
</tr>
</table>
</form>
<!--{% block content %}-->
<!--{% endblock %}-->
</div>
</body>
</html>
home.html
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
{% for k,v in datalist.items%}
<h1>{{k}}---{{v}}</h1>
{% endfor %}
</body>
</html>
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- jQuery用于请求服务器的函数
- jQuery的简单使用
- 编写第一个小程序页面
- 在CentOS7下安装MongoDB
- redis集群搭建
- redis慢查询日志,php安装redis扩展,redis存储session,redis主从配置
- jQuery介绍与常见选择器的使用
- redis常用操作,redis操作键值,redis安全设置
- redis介绍,redis安装,redis持久化,redis数据类型
- AJAX的post请求与上传文件
- memcached的一些简单使用
- nosql介绍,memrcached介绍,安装memcached,查看memcachedq状态
- 如何在IDEA2017创建Maven的Web工程
- JSP上传文件与导出Excel表
- 关于CentOS中tomcat的8005端口启动不起来的解决办法