Size: a a a

2020 April 07

V

Vlad in Python Flask
@Tishka17 пини меня, а?
источник

NL

Nikita L in Python Flask
Vlad
При указании back_populates в двух моделях как фиксится циклический импорт, если они изначально ссылаются друг на друга?

https://pastebin.com/hdVSC5eK
===
sqlalchemy.exc.InvalidRequestError: When initializing mapper mapped class Camera->camera, expression 'Report' failed to locate a na
me ("name 'Report' is not defined"). If this is a class name, consider adding this relationship() to the <class 'models.camera.Came
ra'> class after both dependent classes have been defined.
У db.relationship первый аргумент в кавычках
источник

V

Vlad in Python Flask
Оба случая уже пробовал
источник

AT

Alex Ted in Python Flask
Nikita L
У db.relationship первый аргумент в кавычках
не обязательно
источник

NL

Nikita L in Python Flask
Чёт хз, с виду вроде все ок. Наверное проблема где-то вне моделей. Как ты их импортируешь?
источник

T

Tishka17 in Python Flask
Vlad
При указании back_populates в двух моделях как фиксится циклический импорт, если они изначально ссылаются друг на друга?

https://pastebin.com/hdVSC5eK
===
sqlalchemy.exc.InvalidRequestError: When initializing mapper mapped class Camera->camera, expression 'Report' failed to locate a na
me ("name 'Report' is not defined"). If this is a class name, consider adding this relationship() to the <class 'models.camera.Came
ra'> class after both dependent classes have been defined.
Если указываешь back_populates второй рилейшн не нужен
источник

AT

Alex Ted in Python Flask
Tishka17
Если указываешь back_populates второй рилейшн не нужен
а для обратной связи?
источник

T

Tishka17 in Python Flask
Alex Ted
а для обратной связи?
Так back_populates же
источник

AT

Alex Ted in Python Flask
так это ж не back_ref
источник

T

Tishka17 in Python Flask
Хм
источник

T

Tishka17 in Python Flask
Блин
источник

AT

Alex Ted in Python Flask
он не создает обратный атрибут в связываемом объекте
источник

T

Tishka17 in Python Flask
И права, да
источник

T

Tishka17 in Python Flask
Опять перепутал
источник

V

Vlad in Python Flask
Nikita L
Чёт хз, с виду вроде все ок. Наверное проблема где-то вне моделей. Как ты их импортируешь?
Скорее всего проблема в этом.

Структура
app.py
models
- camera.py
- report.py
- __init__.py

в инит уже всяко пробовал писать

from models.report import Report
from models.camera import Camera

и

from .report import Report
from .camera import Camera
источник

NL

Nikita L in Python Flask
Vlad
Скорее всего проблема в этом.

Структура
app.py
models
- camera.py
- report.py
- __init__.py

в инит уже всяко пробовал писать

from models.report import Report
from models.camera import Camera

и

from .report import Report
from .camera import Camera
Не, не надо модели по разным файлам разносить. Положи их вместе в общих файл, например models.py

Ты когда импортируешь from models.report import Report твое приложение еще не знает про существование Camera, а Report уже на него ссылается
источник

V

Vlad in Python Flask
Я понимаю это, моделей куда больше на самом деле, как и методов. Не понимаю как поддерживать тогда файл в 3к строк)
источник

NL

Nikita L in Python Flask
Vlad
Я понимаю это, моделей куда больше на самом деле, как и методов. Не понимаю как поддерживать тогда файл в 3к строк)
По идее, модели можно разделить, если они никак не взаимосвязаны
источник

NL

Nikita L in Python Flask
Например распихать по блюпринтам
источник

T

Tishka17 in Python Flask
Nikita L
Например распихать по блюпринтам
как связаны блупринты и модели?
источник