小编tad*_*cks的帖子

用于将查询中的表保存为 csv 的 Flask 按钮

我有一个运行查询并返回一个表的烧瓶应用程序。我想在页面上提供一个按钮,以便用户可以将数据导出为 csv。

问题是查询是基于表单输入动态生成的。

@app.route('/report/<int:account_id>', methods=['GET'])
def report(account_id):
    if request == 'GET':
        c = g.db.cursor()
        c.execute('SELECT * FROM TABLE WHERE account_id = :account_id', account_id=account_id)
        entries = [dict(title=row[0], text=row[1]) for row in c.fetchall()]
        return render_template('show_results.html', entries=entries)
Run Code Online (Sandbox Code Playgroud)

在 html 方面,它只是一个简单的表格,循环遍历行并呈现它们。我正在使用引导程序进行样式设置,并包含一个 tablesorter jquery 插件。这些都不是真正重要的。我确实尝试过我找到的一个 javascript 导出器,但是由于我的内容是动态呈现的,因此它保存了一个空白的 CSV。

我是否需要做一些 ajax 风格的技巧来从路由中获取一个 csv 对象?

sql csv export flask

3
推荐指数
1
解决办法
4745
查看次数

Scala 尝试,其他,除了块

我有这样的代码:

val extractInfo: (Array[Byte] => String) = (fp: Array[Byte]) => {

  val parser:Parser = new AutoDetectParser()
  val handler:BodyContentHandler = new BodyContentHandler(Integer.MAX_VALUE)
  val config:TesseractOCRConfig  = new TesseractOCRConfig()
  val pdfConfig:PDFParserConfig = new PDFParserConfig()

  val inputstream:InputStream = new ByteArrayInputStream(fp)

  val metadata:Metadata = new  Metadata()
  val parseContext:ParseContext = new ParseContext()
  parseContext.set(classOf[TesseractOCRConfig], config)
  parseContext.set(classOf[PDFParserConfig], pdfConfig)
  parseContext.set(classOf[Parser], parser)
  parser.parse(inputstream, handler, metadata, parseContext)

  handler.toString
}
Run Code Online (Sandbox Code Playgroud)

使用 Apache Tika 从 PDF 解析文本的函数文字。

不过,我想要的是这里的 Try 块,它在 parser.parse 上运行并在无法执行时返回一个空字符串。我不确定如何在 Scala 中构建这种逻辑。

error-handling scala try-catch

1
推荐指数
1
解决办法
1158
查看次数

标签 统计

csv ×1

error-handling ×1

export ×1

flask ×1

scala ×1

sql ×1

try-catch ×1