我正在建設django應用程序,我遇到som導入問題。我的文件結構:命名空間理解
project/
my_app/
models/
__init__.py
Article.py
StockMovementProduct.py
tools/
__init__.py
Synchronizer.py
項目/程序my_app /模型/ _ 初始化 _.py:
from Article import *
from StockMovementProduct import *
項目/程序my_app /模型/ Article.py:
from django.db import models
class Article(models.Model):
[...]
project/my_app/models/StockMovementProduct.py:
from django.db import models
from my_app.tools import Synchronizer
class StockMovementProduct(models.Model):
def sync_articles(self):
sync = Synchronizer(self)
[...]
項目/ my_app應用/工具/ _ 初始化 _.py是空
項目/ my_app應用/工具/ Synchronizer.py:
from my_app.models import Article
from my_app.models import StockMovementProduct
class Synchronizer():
[...]
當我運行我的代碼這個錯誤提高了:
File "/home/bux/Projets/project/my_app/models/__init__.py", line 7, in <module>
from StockMovementProduct import *
File "/home/bux/Projets/project/my_app/models/StockMovementProduct.py", line 5, in <module>
from my_app.tools import Synchronizer
File "/home/bux/Projets/project/my_app/tools/Synchronizer.py", line 2, in <module>
from my_app.models import StockMovementProduct
ImportError: cannot import name StockMovementProduct
我不明白爲什麼(在Synchronizer.py)條進口工作和StockMovementProduct進口沒有。
在Synchronizer.py我也嘗試:
from my_app.models import Article
from ..models import StockMovementProduct
但沒有成功。我缺少進口方法嗎?
我使用第三個文件,它的工作正常,謝謝! – bux