psycopg2: AttributeError: obiekt „moduł” nie ma atrybutu „dodatki”

86

W moim kodzie używam DictCursorfrom w psycopg2.extrasten sposób

dict_cur = conn.cursor(cursor_factory=psycopg2.extras.DictCursor)

Jednak nagle pojawia się następujący błąd, kiedy ładuję kursor:

AttributeError: 'module' object has no attribute 'extras'

Może coś jest zakorkowane w mojej instalacji, ale nie mam pojęcia, od czego zacząć. Zrobiłem kilka aktualizacji za pomocą pip, ale o ile wiem, nie ma żadnych zależności psycopg2.

n1000
źródło

Odpowiedzi:

145

Musisz jawnie zaimportować psycopg2.extras:

import psycopg2.extras
Wszyscy pracownicy są niezbędni
źródło
Od lipca 2020 r. Import psycopg2.extras działa dla mnie
Amir Samakar
6

Od lipca 2018 r. import psycopg2.extrasNie działa dla mnie. U mnie działa:

pip install psycopg2-binary

i później:

>>> import psycopg2.errorcodes
>>> psycopg2.errorcodes.UNIQUE_VIOLATION
'23505'
Bartłomiej Szałach
źródło