jQuery DataTables && Django serializer
jQuery DataTables
- https://www.datatables.net
本文参考的官方示例
- http://datatables.net/release-datatables/examples/ajax/objects.html
关于Python序列化
- http://www.cnblogs.com/linyawen/archive/2012/03/22/2411381.html
Django中的Models序列化
- http://www.weiguda.com/blog/19/
Python的super用法
- http://www.cnblogs.com/dkblog/archive/2011/02/24/1980654.html
models.py
from django.db import models
from django.contrib import admin # Create your models here.
class BankData(models.Model):
acc_no = models.CharField(max_length=45,primary_key=True)
name = models.CharField(max_length=45,blank=True,default='')
bank = models.CharField(max_length=45,blank=True,default='') class BankDataAdmin(admin.ModelAdmin):
list_display = ('acc_no',) admin.site.register(BankData, BankDataAdmin)
serializers.py
from rest_framework import serializers
from myapp.models import BankData class BankDataSerializer(serializers.ModelSerializer):
class Meta:
model = BankData
fields = ('acc_no','name','bank')
views.py
#! /usr/bin/env python
# -*- coding:utf-8 -*- from myapp.models import BankData
from django.http import HttpResponse
from myapp.serializers import BankDataSerializer
from rest_framework.renderers import JSONRenderer #json
class JSONResponse(HttpResponse):
def __init__(self, data, **kwargs):
content = JSONRenderer().render(data)
kwargs['content_type'] = 'application/json'
super(JSONResponse, self).__init__(content,**kwargs) #jsonp
class JSONPResponse(HttpResponse):
def __init__(self, data, callback='callback',**kwargs):
content = JSONRenderer().render(data)
jsonp_content = callback+ "(" + content + ")"
kwargs['content_type'] = 'application/json'
super(JSONPResponse, self).__init__(jsonp_content,**kwargs) #json for DataTables
class JSONDTResponse(HttpResponse):
def __init__(self, data, **kwargs):
content = JSONRenderer().render(data)
dt_content = "{\"data\":" + content + "}"
kwargs['content_type'] = 'application/json'
super(JSONDTResponse, self).__init__(dt_content,**kwargs) def datas(request):
bds = BankData.objects.all()
serializer = BankDataSerializer(bds,many=True)
return JSONDTResponse(serializer.data)
bank_data.html
<!DOCTYPE html>
<head>
<title>银行信息</title>
<link rel="stylesheet" type="text/css" href="/static/css/jquery.dataTables.min.css">
<script type="text/javascript" src="/static/js/jquery.js"></script>
<script type="text/javascript" src="/static/js/jquery.dataTables.min.js"></script>
</head>
<body>
<script>
$(document).ready(function() {
$('#example').dataTable( {
"bProcessing":true,
"ajax":'/myapp/datas/',
"columns":
[
{'data':'acc_no'},
{'data':'name'},
{'data':'bank'},
]
});
});
</script>
<table id="example" class="display" cellspacing="0" width="100%">
<thead>
<tr>
<th>账号</th>
<th>姓名</th>
<th>银行</th>
</tr>
</thead>
<tfoot>
<tr>
<th>账号</th>
<th>姓名</th>
<th>银行</th>
</tr>
</tfoot>
</table>
</body>
PS.Django中快速将Models变成字典对象
from django.forms.models import model_to_dict
from django.contrib.auth.models import User us = User.objects.all()
print model_to_dict(us[0])
jQuery DataTables && Django serializer的更多相关文章
- [jQuery]jQuery DataTables插件自定义Ajax分页实现
前言 昨天在博客园的博问上帮一位园友解决了一个问题,我觉得有必要记录一下,万一有人也遇上了呢. 问题描述 园友是做前端的,产品经理要求他使用jQuery DataTables插件显示一个列表,要实现分 ...
- jquery Datatables 行数据删除、行上升、行下降功能演示
Datatables 是一款jquery表格插件.它是一个高度灵活的工具,可以将任何HTML表格添加高级的交互功能. 官方网站:http://www.datatables.net Datatables ...
- jQuery datatables
jQuery datatables 属性,用例 参考:http://datatables.club/example/ http://blog.csdn.net/mickey_miki/article/ ...
- ASP.NET MVC+EF在服务端分页使用jqGrid以及jquery Datatables的注意事项
引言: 本人想自己个博客网站出来,技术路线是用ASN.NET MVC5+EF6(Code First)+ZUI+各种Jquery插件,有了这个想法之后就开始选择UI,看了好多bootstrap的模板之 ...
- Jquery.Datatables 服务器处理(Server-side processing)
看了看介绍 http://datatables.club/manual/server-side.html 没有经过处理的分页,先显示出来看看效果,就这样写(存储过程自己写) cshtml " ...
- Jquery Datatables 请求参数及接收参数处理
Jquery Datatables 请求参数及接收参数处理 /** * Created by wb-wuyifu on 2016/8/9. */ /** * Created by wb-wuyifu ...
- Jquery DataTables相关示例
一.Jquery-DataTables DataTables 是jquery的一个开源的插件.它具有高度灵活的特性,基于渐进增强的基础,可以为任何表格添加交互.它特性如下: 提供分页,搜索和多列排序: ...
- Jquery DataTables warning : Requested unknown from the data source for row 0
昨天在做 Jquery DataTables 的时候,遇到的一个问题,我使用MVC,在tables上加入了一个actionlink的href.但是在运行起来的时候,报错: DataTables war ...
- jQuery DataTables Plugin Meets C#
Over the weekend, I was doing some work on the internal CMS we use over at eagleenvision.net and I w ...
随机推荐
- Yii2-admin RBAC权限管理的实现
原文地址:http://www.open-open.com/lib/view/open1434638805348.html http://wlzyan.blog.163.com/blog/stat ...
- Sphinx中文分词安装配置及API调用
这几天项目中需要重新做一个关于商品的全文搜索功能,于是想到了用Sphinx,因为需要中文分词,所以选择了Sphinx for chinese,当然你也可以选择coreseek,建议这两个中选择一个,暂 ...
- 关于VS打开cshtml出现 未能完成该操作。无效指针
关于VS打开cshtml出现 未能完成该操作.无效指针 第一步:关闭VS 第二部:删除%LocalAppData%\Microsoft\VisualStudio\14.0\ComponentModel ...
- 在XP、Win7/8上如何右键进入命令行
在Win7/8上特别简单,只需要在按下shift键后,再点击鼠标右键,即可进入命令行界面.
- systemd
本文参照:https://wiki.archlinux.org/index.php/Systemd#Basic_systemctl_usage 做了翻译和整理 systemd是Linux下的一种ini ...
- 【转载】Ubuntu 系列安装 Docker
系统要求 Docker 支持以下版本的Ubuntu操作系统: Ubuntu Xenial 16.04 (LTS) Ubuntu Wily 15.10 Ubuntu Trusty 14.04 (LTS) ...
- [译]git remote
git remote命令让我们可以创建, 查看, 删除一个到其他仓储的连结. 下图展示了我们的本地仓储有两个remote连接, 一个是中央仓储, 一个是其他开发者的仓储. 除了使用完整的url指向他们 ...
- Windows疑难杂症之开机无法显示桌面。
开机无法显示桌面可能有以下两种情况. 1.系统故障或病毒引起explorer.exe无法加载启动. 2.注册表故障造成默认的值不是explorer.exe.(可能是安装了某些软件造成此问题) 3,某开 ...
- sql group by 理解
order by是对字段进行排序,group by 是对字段进行分类,在select 语句中可以使用group by 子句将行划分成较小的组,然后,使用组函数返回每一个组的汇总信息,另外,可以使用ha ...
- Spring配置bean文件的底层实现方式
首先 bean文件如下: <beans> <bean id="date" class="java.util.Date"></bea ...