Похожие чаты

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 ответов

26 просмотров

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

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 то там нет...

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
@Benzenoid can you tell me the easiest, and safest way to bu.y HEX now?
Živa Žena
20
This is a question from my wife who make a fortune with memes 😂😂 About the Migration and Tokens: 1. How will the old tokens be migrated to the new $LGCYX network? What is th...
🍿 °anton°
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
What is the Dex situation? Agora team started with the Pnetwork for their dex which helped them both with integration. It’s completed but as you can see from the Pnetwork ann...
Ben
1
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Anyone knows where there are some instructions or discort about failed bridge transactions ?
Jochem
21
@lozuk how do I get my phex copies of my ehex from a atomic wallet, to move to my rabby?
Justfrontin 👀
11
Карта сайта