peewee: импорт модели в другую модель выдает TypeError: issubclass() arg 1 должен быть классом
В основном у меня есть такие модели:
\models
\\__init__.py
\\helpers.py
\\modelA.py
\\modelB.py
моя модель А содержит:
from helpers import BaseModel
import modelB
class modelA(BaseModel):
#something...
def get_all_modelB(self):
return modelB.select().where(modelB.id == self.id)
моя модель B содержит:
from helpers import BaseModel
import modelA
from peewee import ForeingKeyField
class modelB(BaseModel):
#something
modelA_id = ForeingKeyField(modelA, related_name='something')
но потом, когда я пытаюсь использовать это, это показывает,
File "C:\Python27\lib\site-packages\peewee.py", line 1246, in __init__
issubclass(rel_model, Model):
TypeError: issubclass() arg 1 must be a class
что странно для меня, потому что, очевидно, я импортирую только файл как модуль, поэтому я попробовал это:
моя новая модель А содержит:
from helpers import BaseModel
from modelB import modelB
class modelA(BaseModel):
#something...
def get_all_modelB(self):
return modelB.select().where(modelB.id == self.id)
моя новая модель B содержит:
from helpers import BaseModel
from modelA import modelA
from peewee import ForeingKeyField
class modelB(BaseModel):
#something
modelA_id = ForeingKeyField(modelA, related_name='something')
File "C:\some\random\path\modelB.py", some line, in <module>
from modelA import modelA
ImportError: cannot import name modelA
Что я делаю неправильно? Есть ли другой способ сделать это более простым или правильным способом?
Спасибо