Postgresql pgadmin4 1.3引发CSV导出中断

Postgresql pgadmin4 1.3引发CSV导出中断,postgresql,pgadmin,pgadmin-4,Postgresql,Pgadmin,Pgadmin 4,我安装了pgadmin4 1.3(在docker容器中),除了CSV导出之外,其他一切都正常工作 我在首选项中正确地填写了二进制路径,但它仍然不起作用。我没有错误消息。当我单击CSV导出图标时,什么也没有发生 这是我的配置: Python版本:2.7.12 Postgresql版本:9.5 Pgadmin版本:4.1.3 Ubuntu 16.04 如果有人有同样的问题,并希望知道如何解决它,你能帮助吗 谢谢 我终于找到了罪犯 我查看了/var/log/apache2/errors.log,在

我安装了pgadmin4 1.3(在docker容器中),除了CSV导出之外,其他一切都正常工作

我在首选项中正确地填写了二进制路径,但它仍然不起作用。我没有错误消息。当我单击CSV导出图标时,什么也没有发生

这是我的配置:

  • Python版本:2.7.12
  • Postgresql版本:9.5
  • Pgadmin版本:4.1.3
  • Ubuntu 16.04
如果有人有同样的问题,并希望知道如何解决它,你能帮助吗


谢谢

我终于找到了罪犯

我查看了/var/log/apache2/errors.log,在CSV创建过程中看到一个
unicodeincodeerror
。错误来自此文件:

/usr/local/lib/python2.7/dist-packages/pgadmin4/pgadmin/utils/driver/psycopg2/\uuuu-init\uuuuu.py

第651行,CSV编写器在编写特殊字符(如重音字符)时被破坏(我使用的是Python 2,我想我不会有Python 3的问题):

csv\u writer.writerows(结果)

最终,我通过使用
unicodesv
库解决了这个问题:

  • pip安装unicodesv
  • 第22行:将
    import csv
    替换为
    import unicodesv as csv
  • 第647行:将
    csv.DictWriter(res_io,fieldnames=header,delimiter=str(','),quoting=csv.QUOTE非数字)替换为
    csv.DictWriter(res_io,encoding='utf-8',fieldnames=header,delimiter=str(','),quoting=csv.QUOTE非数字)

希望它可以帮助其他人,而这个编码错误是不固定的

我终于找到了罪犯

我查看了/var/log/apache2/errors.log,在CSV创建过程中看到一个
unicodeincodeerror
。错误来自此文件:

/usr/local/lib/python2.7/dist-packages/pgadmin4/pgadmin/utils/driver/psycopg2/\uuuu-init\uuuuu.py

第651行,CSV编写器在编写特殊字符(如重音字符)时被破坏(我使用的是Python 2,我想我不会有Python 3的问题):

csv\u writer.writerows(结果)

最终,我通过使用
unicodesv
库解决了这个问题:

  • pip安装unicodesv
  • 第22行:将
    import csv
    替换为
    import unicodesv as csv
  • 第647行:将
    csv.DictWriter(res_io,fieldnames=header,delimiter=str(','),quoting=csv.QUOTE非数字)替换为
    csv.DictWriter(res_io,encoding='utf-8',fieldnames=header,delimiter=str(','),quoting=csv.QUOTE非数字)
希望它可以帮助其他人,而这个编码错误是不固定的

我们(社区)已在1.5中修复了此问题。因此,您不需要在../pgadmin4/pgadmin/utils/driver/psycopg2/_uinit__u;.py文件中进行修改。请参阅问题2253、2314、2360,我们(社区)已在1.5中修复了此问题。因此,您不需要在../pgadmin4/pgadmin/utils/driver/psycopg2/_uinit__u;.py文件中进行修改。请参阅问题2253、2314、2360,我们(社区)已在1.5中修复了此问题。因此,您不需要在../pgadmin4/pgadmin/utils/driver/psycopg2/_uinit__u;.py文件中进行修改。请参阅问题2253、2314、2360,我们(社区)已在1.5中修复了此问题。因此,您不需要在../pgadmin4/pgadmin/utils/driver/psycopg2/_uinit__u;.py文件中进行修改。见第2253、2314、2360期