day72

参考:https://www.cnblogs.com/liwenzhou/p/8718861.html#autoid-6-1-2

前端序列化

后端序列化

day73中

补充一个SweetAlert插件示例

甜甜的警告

点击下载Bootstrap-sweetalert项目

需要的文件:

其中有例子:https://lipis.github.io/bootstrap-sweetalert/

示例:

sweetalert

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>sweetalert_demo</title>
<link rel="stylesheet" href="/static/bootstrap/css/bootstrap.css">
<link rel="stylesheet" href="/static/fontAwesome/css/font-awesome.css">
<link rel="stylesheet" href="/static/sweetalert/sweetalert.css">
<style>
.sweet-alert>h2{
padding-top: 15px;
}
</style> </head>
<body>
<div class="container">
<div class="panel panel-primary">
<div class="panel-heading">
<h3 class="panel-title">Person管理</h3>
</div>
<div class="panel-body">
<table class="table table-bordered">
<thead>
<tr>
<th>序号</th>
<th>id</th>
<th>name</th>
<th>age</th>
<th>生日</th>
<th>操作</th>
</tr>
</thead>
<tbody>
{% for p in persons %}
<tr>
<td>{{ forloop.counter }}</td>
<td>{{ p.id }}</td>
<td>{{ p.name }}</td>
<td>{{ p.age }}</td>
<td>{{ p.birthday|date:'Y-m-d' }}</td>
<td>
<button class="btn btn-danger del"><i class="fa fa-trash-o">删除</i></button>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div> <script src="/static/jquery-3.2.1.min.js"></script>
<script src="/static/bootstrap/js/bootstrap.js"></script>
<script src="/static/sweetalert/sweetalert.min.js"></script> <script src="/static/setupajax.js"></script>
<script>
// 找到删除按钮绑定事件 找del类
{#$(".del").on("click", function () {#}
{#github中示例内容#}
{# swal({#}
{# title: "Are you sure?",#}
{# text: "Your will not be able to recover this imaginary file!",#}
{# type: "warning",#}
{# showCancelButton: true,#}
{# confirmButtonClass: "btn-danger",#}
{# confirmButtonText: "Yes, delete it!",#}
{# closeOnConfirm: false#}
{# },#}
{# function () {#}
{# swal("Deleted!", "Your imaginary file has been deleted.", "success");#}
{# });#} $(".del").on("click", function () {
{#td tr#}
var $trEle = $(this).parent().parent();
{#eq索引,取其中的内容#}
var delId = $trEle.children().eq(1).text(); swal({
title: "你确定要删除吗?",
text: "一旦删除就找不回来了",
type: "warning",
showCancelButton: true,
confirmButtonClass: "btn-warning",
confirmButtonText: "确认",
cancelButtonText: "取消",
closeOnConfirm: false,
showLoaderOnConfirm: true // 显示删除的状态
},
function(){
// 向后端发送删除的请求
$.ajax({
url: "/delete/",
type: "POST",
data: {"id":delId},
success:function (arg) {
swal(arg, "你可以跑路了!", "success");
$trEle.remove(); // 删去该条数据
}
}); });
})
</script> </body>
</html>

views.py

 from app01 import models
def persons(request):
ret = models.Person.objects.all()
# person_list = []
# for i in ret:
# person_list.append({"name": i.name,
# "age": i.age})
# print(person_list, type(person_list))
# import json
# s = json.dumps(person_list)
# print(s, type(s)) # 字符串 # # 下面是内置的序列化
# from django.core import serializers
# s = serializers.serialize("json", ret)
# print(s)
# return HttpResponse(ret)
print(ret)
return render(request, "sweetalert.html", {"persons": ret}) def delete(request):
del_id = request.POST.get("id")
models.Person.objects.filter(id=del_id).delete()
print(del_id)
return HttpResponse("删除成功!")

所在项目

效果:

Django(序列化、SweetAlert插件)的更多相关文章

  1. python 全栈开发,Day75(Django与Ajax,文件上传,ajax发送json数据,基于Ajax的文件上传,SweetAlert插件)

    昨日内容回顾 基于对象的跨表查询 正向查询:关联属性在A表中,所以A对象找关联B表数据,正向查询 反向查询:关联属性在A表中,所以B对象找A对象,反向查询 一对多: 按字段:xx book ----- ...

  2. {Django基础七之Ajax} 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解)

    Django基础七之Ajax 本节目录 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解) 一 Ajax简介 ...

  3. Django与Ajax,文件上传,ajax发送json数据,基于Ajax的文件上传,SweetAlert插件

    一.Django与Ajax AJAX准备知识:JSON 什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻 ...

  4. {Django基础七之Ajax} 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解)

    {Django基础七之Ajax} 一 Ajax简介 二 Ajax使用 三 Ajax请求设置csrf_token 四 关于json 五 补充一个SweetAlert插件(了解)   Django基础七之 ...

  5. django系列6--Ajax06 使用插件,Sweet-Alert插件

    使用SweetAlert插件 GitHub上的下载链接 下载完成后放入django项目静态目录下,在html文件中引入静态文件,下面是script部分 $(".btn-danger" ...

  6. Django框架10 /sweetalert插件、django事务和锁、中间件、django请求生命周期

    Django框架10 /sweetalert插件.django事务和锁.中间件.django请求生命周期 目录 Django框架10 /sweetalert插件.django事务和锁.中间件.djan ...

  7. 【笔记】AJAX+SweetAlert插件实现删除操作

    [笔记]AJAX+SweetAlert插件实现删除操作 Django AJAX SweetAlert  展示 SweetAlert 插件介绍 SweetAlert 是一个 JS 插件,能够完美替代 J ...

  8. Django序列化&django REST framework

    第一章.Django序列化操作 1.django的view实现商品列表页(基于View类) # 通过json来序列化,但手写字典key代码量较大,容易出错:还有遇到时间,图片序列化会报错 from g ...

  9. Python 之 Django框架( Cookie和Session、Django中间件、AJAX、Django序列化)

    12.4 Cookie和Session 12.41 cookie Cookie具体指的是一段小信息,它是服务器发送出来存储在浏览器上的一组组键值对,下次访问服务器时浏览器会自动携带这些键值对,以便服务 ...

随机推荐

  1. Navicat for MySQL使用

    Navicat for MySQL使用 导出数据库表与结构 新数据库导入

  2. Cuda9.2发布

    经过一次跳票,没有很多人注意(才怪)的cuda9.2终于发布了,官方介绍如下: CUDA 9.2 includes updates to libraries, a new library for ac ...

  3. 分布式版本控制系统Git的安装和使用

    作业要求来自https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2097 GitHub远程仓库的地址:https://github.com/ ...

  4. Http的缓存机制

    最近参加一个面试,被面试官问到http的缓存机制,发现自己并不熟悉,于是这篇博客诞生了. HTTP是超文本传输协议,从万维网服务器传输文本到本地浏览器的传送协议,基于TCP/IP通信协议传递数据 HT ...

  5. 页面引入js问题

    今日问题:左侧菜单栏多余的菜单不可以滚动,自己找了很长时间,前端同事帮忙找了很长事件,最后帮我找到问题所在. 这里红色部分标识有多余部分,可以滑动是对的.但是滑动了. 问题:jquery引入的地方错了 ...

  6. Linux磁盘配额

    Step1:修改fstab文件,增加磁盘限额用户和用户组信息 # /etc/fstab# Created by anaconda on Sat Dec 29 04:48:18 2018## Acces ...

  7. ES6 Rest参数

    Rest参数接收函数的多余参数,组成一个数组,放在形参的最后,形式如下: function func(a, b, ...theArgs) { // ... } rest参数只包括那些没有给出名称的参数 ...

  8. 如何自行搭建一个威胁感知大脑 SIEM?| 硬创公开课

    如何自行搭建一个威胁感知大脑 SIEM?| 硬创公开课 本文作者:谢幺 2017-03-10 10:09 专题:硬创公开课 导语:十年安全产品经验的百度安全专家兜哥,手把手教你用开源项目搭建SIEM安 ...

  9. Oracle 忘记sys与system管理员密码重置操作

    首先打开cmd 执行 orapwd file=C:\app\PWDorcl.ora password=orclorcl C:\app\PWDorcl.ora是你要存放的路径文件 Password=or ...

  10. 创建.NET core的守护进程

    http://www.cnblogs.com/savorboard/p/dotnetcore-supervisor.html