首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将PDF打印功能添加到Clojure中的元数据库中

如何将PDF打印功能添加到Clojure中的元数据库中
EN

Stack Overflow用户
提问于 2019-11-25 15:31:55
回答 1查看 1.4K关注 0票数 0

我已经叉元数据库项目,并希望添加一些“导出到pdf”功能到报告,您目前可以导出到csv,excel和json。

我试着找到它,花了很多时间寻找一个现有的元数据库叉,它可能具有这个功能,但什么也找不到。

在src/metabase/util中,有一个文件包含一些导出到csv、json等的逻辑。

到目前为止,我已经编写了一些编辑,但是我没有使用Clojure的经验,所以我只是尝试将它扩展到目前为止,然后希望从so社区获得一些指导。

代码语言:javascript
复制
(def export-formats
  "Map of export types to their relevant metadata"
  {
    "pdf"  {:export-fn      export-to-pdf
           :content-type     "application/pdf"
           :ext            "pdf"
           :context     :pdf-download},
    "csv"  {:export-fn    export-to-csv
           :content-type "text/csv"
           :ext          "csv"
           :context      :csv-download},
   "xlsx" {:export-fn    export-to-xlsx
           :content-type "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
           :ext          "xlsx"
           :context      :xlsx-download},
   "json" {:export-fn    export-to-json
           :content-type "applicaton/json"
           :ext          "json"
           :context      :json-download}})

在同一页中,还提到了其中一些函数的定义。因此,我添加了一个pdf,这只是csv函数复制,因为我只是想尝试看看,一个新的选项显示首先。

代码语言:javascript
复制
(defn- export-to-pdf [column-names rows]
  (with-out-str
    ;; turn keywords into strings, otherwise we get colons in our output
    (csv/write-csv *out* (into [(mapv name column-names)] rows))))

我的元数据库克隆安装在Heroku上。我尝试进行上述更改,但在下载选项中没有看到任何结果。我尝试从该文件中删除其他下载方法,但没有看到任何更改。

我希望有人能为我指明正确的方向去改变这一切。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-25 21:19:03

Metabase是一个积极维护的项目,有一些优秀的人全职工作。添加功能是开源的魔力所在。有了这样的项目,与现有人员一起添加新东西几乎总是更容易的。

  1. 检查仅仅使用您的浏览器打印到pdf功能是否足够好。
  2. 首先,检查github页面是否打开或关闭了项目问题页
  3. 与元数据库人员联系(其中一些人可能会看到这条消息)并告诉他们您想要什么。提供你的帮助,并问一问哪里是最好的起点。
  4. 通过遵循这些指示获得元数据库开发环境的设置
  5. 阅读这些说明,特别是投稿指南。然后为你正在做的事情打开一个公关。不要仅仅用一个完整的新特性来调用他们。早沟通,多沟通。
  6. 将导出功能添加到后端导出部分和前端页面
  7. 为后端添加UI测试和测试。
  8. 不要操之过急,当有很多轮来回,以使公关在一个州被合并。让代码很好地匹配并不是你的批评。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59035225

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档