Похожие чаты

Sqlalchemy.Exc.InvalidRequestError: Table 'users' is already defined for this MetaData instance.

Specify 'extend_existing=True' to redefine options and columns on an existing Table object.

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

Может ли это быть связано с тем, что тесты и само приложение используют одну метадату?

15 ответов

23 просмотра

как метадата определена?

kindaway- Автор вопроса
Ilya Lyapin (Nestyreff)
как метадата определена?

ну саму метадату не настраивал, просто есть BaseModel с переопределенным repr для классов-наследников. И от BaseModel наследуются все модели

kindaway- Автор вопроса
Ilya Lyapin (Nestyreff)
Так, а как создаются таблицы?

https://gist.github.com/kindaway/d210866b1ed3c5efbcd7cee04d67d031

kindaway
https://gist.github.com/kindaway/d210866b1ed3c5efb...

нет, я имею ввиду, у тебя что дублируются модели для тестов?

kindaway- Автор вопроса
Ilya Lyapin (Nestyreff)
нет, я имею ввиду, у тебя что дублируются модели д...

в смысле что я скопировал код моделек для тестов? Нет, такого не делал

kindaway
в смысле что я скопировал код моделек для тестов? ...

хорошо, а на каком этапе ошибка возникает? скинь полный трейс

kindaway- Автор вопроса
Ilya Lyapin (Nestyreff)
хорошо, а на каком этапе ошибка возникает? скинь п...

при любом взаимодействии с моделью. Даже если просто попытаться запустить файл, где лежит модель

kindaway
при любом взаимодействии с моделью. Даже если прос...

настройки sessionmaker и engine какие-нибудь ставил?

kindaway- Автор вопроса
Ilya Lyapin (Nestyreff)
настройки sessionmaker и engine какие-нибудь стави...

в приложении -- только связанное с автофлашем и настройками пула, а в тестах у sessionmaker стоит join_transaction_mode="create_savepoint"

kindaway
в приложении -- только связанное с автофлашем и на...

ну такое в теории могло быть с autoload, но раз так, то всё больше похоже, что у тебя один и тот же файл по каким-то причинам определяется 2 раза, либо метадата каким-то чудом остается с прошлой сессии

kindaway- Автор вопроса
Ilya Lyapin (Nestyreff)
ну такое в теории могло быть с autoload, но раз та...

да, похоже на то. Я даже почистил pycache, потому что к в гугле кому-то это помогло) пойду перепроверю импорты

kindaway
да, похоже на то. Я даже почистил pycache, потому ...

можно еще попробовать проверить, что выключена какая-либо подгрузка таблиц из базы данных (MetaData.reflect=False, Table.keep_existing=False, Session.auto_load=False)

kindaway- Автор вопроса
Ilya Lyapin (Nestyreff)
можно еще попробовать проверить, что выключена как...

а где это указать? сейчас посмотрел через дебаггер, к моменту определения класса Interest в метадате лежат данные о нескольких таблицах, но таблицы interests то там нет...

Похожие вопросы

Обсуждают сегодня

Ready for some fun AND a chance to win TKO Tokens? Join us for exciting minigames in our Telegram group! 🕒 Don’t miss out—games start on today 25 October 2024, at 8 PM! Ge...
Milkyway | Tokocrypto
255
Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
VIP-392 [zkSync] New native USDC market in the Core pool Summary If passed, following the Community proposal “Support native USDC on Venus Core Pool of ZKSync Era” and the a...
Venus Announcements
1
is that okay?
Samurai 🇯🇵
21
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
How about the project bro Likes the community not that active ?
🅿️abby_FX
19
Я вот подумал. SSE выполняет операции максимум с 64-битной точностью. А FPU - всегда с 80-битной. Разве не должно быть FPU точнее тогда?
The Bird of Hermes
13
Guys, Donald Trump or Kamala Harris? It does not matter for Bitcoin in the long run!! 2020 Election: After Joe Biden's victory in November 2020, Bitcoin steadily rose from...
Sabah Shabu
3
как быть с принтером? такой подход прокатит?
zamtmn
12
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Карта сайта