Sqlalchemy / Table object has no attribute _c
Рассказывать особо нечего... Весь код ниже и ошибка тоже. Из-за чего берется ошибка не могу понять...
from sqlalchemy import (
create_engine, MetaData, Table,
Column, INT, BOOLEAN, SMALLINT, VARCHAR, CHAR
)
engine = create_engine(
'postgresql+psycopg2://username:password@localhost/db',
isolation_level='REPEATABLE READ',
future=True)
metadata = MetaData()
keys_table = Table('keys_table', metadata,
Column('id', INT, primary_key=True),
Column('user_id', INT),
Column('key', VARCHAR(24)),
Column('count', SMALLINT),
Column('status', BOOLEAN),
Column('value', CHAR)
)
ОШИБКА :
# python db_manager.py
Traceback (most recent call last):
File "db_manager.py", line 13, in <module>
keys_table = Table('keys_table', metadata,
File "<string>", line 2, in __new__
File "C:\Users\admin\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\util\deprecations.py", line 298, in warned
return fn(*args, **kwargs)
File "C:\Users\admin\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\sql\schema.py", line 601, in __new__
metadata._remove_table(name, schema)
File "C:\Users\admin\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\util\langhelpers.py", line 70, in __exit__
compat.raise_(
File "C:\Users\admin\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\util\compat.py", line 198, in raise_
raise exception
File "C:\Users\admin\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\sql\schema.py", line 596, in __new__
table._init(name, metadata, *args, **kw)
File "C:\Users\admin\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\sql\schema.py", line 631, in _init
PrimaryKeyConstraint(
File "C:\Users\admin\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\sql\base.py", line 1014, in _set_parent_with_dispatch
self._set_parent(parent, **kw)
File "C:\Users\admin\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\sql\schema.py", line 3805, in _set_parent
table_pks = [c for c in table.c if c.primary_key]
File "C:\Users\admin\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\sql\schema.py", line 488, in c
return self._c
AttributeError: 'Table' object has no attribute '_c' ```
Ответы (1 шт):
Автор решения: Andrexxelles
→ Ссылка
Ошибка была найдена. Стоял интерпретатор Sqlalchemy на старую версию.