superset-0.35 clickhouse_orm不支持decimal

superset-0.35 clickhouse_orm不支持decimal,第1张

      近期使用apache superset的报表系统,发现使用clickhouse数据源进行数据分析,发现当字段为decimal类型superset将会报如下错误  clickhouse error: No field class for Decimal

         经过查看后台日志发现 python3.7/site-packages/sqlalchemy_clickhouse/connector.py 类中没有decimal数据类型

         于是依葫芦画瓢在里面添加对decimal数据类型的处理,但是如果是要在线上进行部署,通过pip install sqlalchemy-clickhouse安装clickhouse就需要手动修改此文件,当然如果在内网环境中,你可以通过把superset所依赖的包打包成tar.gz文件,然后丢到你的python目录下,然后通过非pip式安装superset直接一键式部署。

         将decimal转成string这种方式是可行,但是并不是比较正规的处理,最后在github上发现一种新的处理方式( sqlalchemy-clickhouse/connector.py at master · cloudflare/sqlalchemy-clickhouse · GitHub ),将decimal类型转成了decimalfield类型,然后就可以正常的使用decimal数据字段(虽然网上没有人提及这个不支持decimal的问题,所以怀疑有没有可能是sqlalchemy_clickhouse版本问题,毕竟这样 *** 作繁琐,等后续有解决方案再更新)

首先,认识一下 X-Frame-Options。

The X-Frame-Options HTTP 响应头是用来给浏览器 指示允许一个页面 可否在 <frame> , <iframe> , <embed> 或者 <object> 中展现的标记。站点可以通过确保网站没有被嵌入到别人的站点里面,从而避免 clickjacking 攻击。

X-Frame-Options 有三个可能的值:

在0.27中保持这个配置项为空即可,在master中远远不够。

这么修改后可能还会遇到在打开iframe时出现错误

这里的原因可能是——开启public角色的访问权限后,真正放到iframe中还需要解决跨域问题,而老版本中对http_headers配置项的修改不起作用,只能直接对explore_json去除csrf保护。

添加配置文件中的

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11272540.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-14
下一篇2023-05-14

发表评论

登录后才能评论

评论列表(0条)

    保存