在上一篇中(Django 练习班级管理系统一 https://www.cnblogs.com/klvchen/p/11078174.html),使用的是莫泰对话框的方式提交数据,适用于数据量少的操作。若业务需要数据多,数据量大的操作,可以使用单独页面进行添加,下面是具体例子:

在 classes.html 页面下修改 a 标签:

    <h1>班级管理</h1>
<div>
<input id="id_add" type="button" value="添加">
<a href="/add_classes.html">添加</a>

在 urls.py 上添加:

    path('add_classes.html', views.handle_add_classes),

在 views.py 上 添加:

@auth
def handle_add_classes(request):
message = ""
if request.method == 'GET':
return render(request, 'add_classes.html', {'msg': message})
elif request.method == 'POST':
# 获取 POST 提交数据中的 caption 值
caption = request.POST.get('caption')
if caption:
# 值不为空,则在数据库中创建
models.Classes.objects.create(caption=caption)
else:
message = '标题不能为空'
return render(request, 'add_classes.html', {'msg': message})
# 添加成功后,返回班级列表
return redirect('/classes.html')
else:
return redirect('/index.html')

在 templates 文件夹下,添加一个 add_classes.html 页面

{% extends "layout.html" %}

{% block css %}
{% endblock %} {% block content %}
<h1>添加班级</h1>
<form action="/add_classes.html" method="post">
<input type="text" name="caption">
<input type="submit" value="提交">{{ msg }}
</form>
{% endblock %} {% block js %}
<script>
$(function () {
$('#menu_class').addClass('active');
})
</script>
{% endblock %}

最新文章

  1. ABP源码分析三十四:ABP.Web.Mvc
  2. 【Win 10 应用开发】获取本机的IP地址
  3. HTML5 网络拓扑图性能优化
  4. xcode8插件无法使用
  5. strcat strcpy 使用出现的问题汇总
  6. MySql下载安装(Mac平台) 终端启动 XMAPP启动
  7. ionic 项目的启动屏幕
  8. 强制转https
  9. Spark问题记录
  10. Linux企业级项目实践之网络爬虫(7)——DNS解析
  11. OpenCV学习(1)OpenCV简介
  12. Win10使用中的一些问题
  13. Mybatis基础学习(五)&mdash;缓存
  14. C语言程序设计预备作业。
  15. javascript:void(0) 含义
  16. hadoop知识点总结
  17. Excel 使用单元格的值 查询MySQL数据库并返回数据给相应的单元格
  18. keepalived vip 没有生成或者生成了ping不通?
  19. Codeforces.919E.Congruence Equation(同余 费马小定理)
  20. USACO Section 1.5 Prime Palindromes 解题报告

热门文章

  1. Linux根目录下各目录含义
  2. Python—函数的参数传递
  3. VMWare虚拟机提示:锁定文件失败,打不开磁盘...模块&quot;Disk&quot;启动失败的解决办法
  4. day54_9_18视图层某内部原理(fbv和cbv)与模板层
  5. 详解C++ STL priority_queue 容器
  6. C# Windows服务创建安装卸载
  7. Vue.js 创建第一个应用
  8. Educational Codeforces Round 63 (Rated for Div. 2) D dp(最大连续子序列)
  9. 洛谷P3206 [HNOI2010]城市建设
  10. 【2019年08月26日】A股最便宜的股票