def ajax_reports():
offset = request.args.get('start', type=int)
limit = request.args.get('length', type=int)
search_term = request.args.get('search[value]')
order_index = request.args.get('order[0][column]', type=int)
order_dir = request.args.get('order[0][dir]')
fields = [EmailReport.date_reported,
EmailReport.reported_by,
EmailReport.report_type,
EmailReport.subject,
EmailReport.status]
query = EmailReport.domain_query(g.domain)
total_count = query.count()
# Setup the correct ordering
order_field = EmailReport.key
if order_index > 0:
order_field = fields[order_index - 1]
if order_dir == 'desc':
order_field = -order_field
query_options = ndb.QueryOptions(limit=limit, offset=offset)
results = query.order(order_field).fetch(options=query_options, projection=fields)
results_json = [result.to_dict() for result in results]
return jsonify({
'draw': int(request.args.get('draw')),
'recordsTotal': total_count,
'recordsFiltered' : total_count,
'data': results_json
})
评论列表
文章目录