pgadmin4 1.3 вызывает сбой экспорта CSV

Я установил pgadmin4 1.3 (в контейнере докера), и все работает нормально, кроме экспорта в CSV.

Я правильно заполнил двоичные пути в настройках, но это все еще не работает. У меня нет сообщения об ошибке. Когда я щелкаю значок экспорта CSV, ничего не происходит.

Вот мой конфиг:

  • Версия Python: 2.7.12
  • Версия Postgresql: 9.5
  • Версия pgadmin: 4.1.3
  • Ubuntu 16.04

Если у кого-то есть такая же проблема и, надеюсь, он знает, как ее решить, не могли бы вы помочь?

Спасибо !


person Julien Salinas    schedule 07.04.2017    source источник
comment
Мы (сообщество) исправили эту проблему в версии 1.5. Поэтому вам не нужно вносить изменения в файл ../pgadmin4/pgadmin/utils/driver/psycopg2/__init__.py. См. Проблемы 2253, 2314, 2360 на странице redmine.postgresql.org/versions/48.   -  person Harshal Dhumal    schedule 24.05.2017


Ответы (1)


Я наконец нашел виноватого!

Я просмотрел /var/log/apache2/errors.log и увидел UnicodeEncodeError во время создания CSV. Ошибка произошла из этого файла:

/usr/local/lib/python2.7/dist-packages/pgadmin4/pgadmin/utils/driver/psycopg2/__init__.py

Строка 651, писатель CSV был сломан при написании специальных символов, таких как акцентированные символы (я использую Python 2, думаю, у меня не было бы проблемы с Python 3):

csv_writer.writerows(results)

В конце концов я решил это с помощью библиотеки unicodecsv:

  • pip install unicodecsv
  • строка 22: заменено import csv на import unicodecsv as csv
  • строка 647: заменено csv.DictWriter(res_io, fieldnames=header, delimiter=str(','), quoting=csv.QUOTE_NONNUMERIC) на csv.DictWriter(res_io, encoding='utf-8', fieldnames=header, delimiter=str(','), quoting=csv.QUOTE_NONNUMERIC)

Надеюсь, это поможет другим, пока эта ошибка кодирования не исправлена!

person Julien Salinas    schedule 09.04.2017
comment
Мы (сообщество) исправили эту проблему в версии 1.5. Поэтому вам не нужно вносить изменения в файл ../pgadmin4/pgadmin/utils/driver/psycopg2/__init__.py. См. Проблемы 2253, 2314, 2360 на странице redmine.postgresql.org/versions/48. - person Harshal Dhumal; 24.05.2017