在一個應用程序中的models.py變大後,我試着將一些類移動到子包中。Django:將模型重構爲子模塊
舊的結構是這樣的:
# File: assets/models.py
class Asset(...):
# lots of irrelevant code
# File: widgets/models.py
from assets.models import Asset
class Video(...):
asset = models.ForeignKey(Asset)
這個工作沒有問題,所以我不打算進入關於結構的進一步細節。
我現在試着做的是將Asset
類移入子模塊。結構現在如下:
# File: assets/models/__init__.py (of course I deleted the old models.py)
from .assets import Asset
# File: assets/models/assets.py
class Asset(...):
# lots of irrelevant code
# File: widgets/models.py
from assets.models.assets import Asset
class Video(...):
asset = models.ForeignKey(Asset)
不知何故,這是行不通的,我不知道究竟是什麼導致了麻煩。我得到的錯誤是這樣的:
widgets.video:「資產」與模型的關係,這要麼不安裝或 是抽象
謝謝!我剛剛嘗試過,不幸的是,Django仍然給出了同樣的錯誤。 –
@DaveVogt:你可能會發布堆棧跟蹤? Django在哪裏提出這個錯誤? –