old_contents: #!/usr/bin/env python
  # -*- encoding: utf-8 -*-
  # vim: set et sw=4 ts=4 sts=4 ff=unix fenc=utf8:
  # Author: Binux<i@binux.me>
  #         http://binux.me
  # Created on 2014-10-19 16:23:55
  
  from __future__ import unicode_literals
  
  from flask import render_template, request, json
  from flask import Response
  from .app import app
  from pyspider.libs import result_dump
  
  
  @app.route('/results')
  def result():
      resultdb = app.config['resultdb']
      project = request.args.get('project')
      offset = int(request.args.get('offset', 0))
      limit = int(request.args.get('limit', 20))
  
      count = resultdb.count(project)
      results = list(resultdb.select(project, offset=offset, limit=limit))
  
      return render_template(
          "result.html", count=count, results=results,
          result_formater=result_dump.result_formater,
          project=project, offset=offset, limit=limit, json=json
      )
  
  
  @app.route('/results/dump/<project>.<_format>')
  def dump_result(project, _format):
      resultdb = app.config['resultdb']
      # force update project list
      resultdb.get(project, 'any')
      if project not in resultdb.projects:
          return "no such project.", 404
  
      offset = int(request.args.get('offset', 0))
      limit = int(request.args.get('limit', 0))
      results = resultdb.select(project, offset=offset, limit=limit)
  
      if _format == 'json':
          valid = request.args.get('style', 'rows') == 'full'
          return Response(result_dump.dump_as_json(results, valid),
                          mimetype='application/json')
      elif _format == 'txt':
          return Response(result_dump.dump_as_txt(results),
                          mimetype='text/plain')
      elif _format == 'csv':
          return Response(result_dump.dump_as_csv(results),
                          mimetype='text/csv')
  
new_contents: #!/usr/bin/env python
  # -*- encoding: utf-8 -*-
  # vim: set et sw=4 ts=4 sts=4 ff=unix fenc=utf8:
  # Author: Binux<i@binux.me>
  #         http://binux.me
  # Created on 2014-10-19 16:23:55
  
  from __future__ import unicode_literals
  
  from flask import render_template, request, json
  from flask import Response
  from .app import app
  from pyspider.libs import result_dump
  
  
  @app.route('/results')
  def result():
      resultdb = app.config['resultdb']
      project = request.args.get('project')
      offset = int(request.args.get('offset', 0))
      limit = int(request.args.get('limit', 20))
  
      count = resultdb.count(project)
      if not isinstance(count, int):
          count = 0
  
      results = list(resultdb.select(project, offset=offset, limit=limit))
  
      return render_template(
          "result.html", count=count, results=results,
          result_formater=result_dump.result_formater,
          project=project, offset=offset, limit=limit, json=json
      )
  
  
  @app.route('/results/dump/<project>.<_format>')
  def dump_result(project, _format):
      resultdb = app.config['resultdb']
      # force update project list
      resultdb.get(project, 'any')
      if project not in resultdb.projects:
          return "no such project.", 404
  
      offset = int(request.args.get('offset', 0))
      limit = int(request.args.get('limit', 0))
      results = resultdb.select(project, offset=offset, limit=limit)
  
      if _format == 'json':
          valid = request.args.get('style', 'rows') == 'full'
          return Response(result_dump.dump_as_json(results, valid),
                          mimetype='application/json')
      elif _format == 'txt':
          return Response(result_dump.dump_as_txt(results),
                          mimetype='text/plain')
      elif _format == 'csv':
          return Response(result_dump.dump_as_csv(results),
                          mimetype='text/csv')
  
subject: fix template error cause by count=None