导入错误:无法从部分初始化的模块'core.models'导入名称'Item'(很可能是由于循环导入)



这是完整的回溯:

Traceback (most recent call last): File
   "C:UsersAbdulOneDriveDesktopdjango-ecommerce-mastermanage.py",
   line 15, in <module> execute_from_command_line(sys.argv) File
   "C:UsersAbdul.virtualenvsdjango-ecommerce-master-FJQqFcPPlibsite-packagesdjangocoremanagement__init__.py",
   line 446, in execute_from_command_line utility.execute() File
   "C:UsersAbdul.virtualenvsdjango-ecommerce-master-FJQqFcPPlibsite-packagesdjangocoremanagement__init__.py",
   line 420, in execute django.setup() File
   "C:UsersAbdul.virtualenvsdjango-ecommerce-master-FJQqFcPPlibsite-packagesdjango__init__.py",
   line 24, in setup apps.populate(settings.INSTALLED_APPS) File
   "C:UsersAbdul.virtualenvsdjango-ecommerce-master-FJQqFcPPlibsite-packagesdjangoappsregistry.py",
   line 116, in populate app_config.import_models() File
   "C:UsersAbdul.virtualenvsdjango-ecommerce-master-FJQqFcPPlibsite-packagesdjangoappsconfig.py",
   line 269, in import_models self.models_module =
   import_module(models_module_name) File
   "C:UsersAbdulAppDataLocalProgramsPythonPython310libimportlib__init__.py",
   line 126, in import_module return
   _bootstrap._gcd_import(name[level:], package, level) File "<frozen importlib._bootstrap>", line 1050, in _gcd_import File "<frozen
   importlib._bootstrap>", line 1027, in _find_and_load File "<frozen
   importlib._bootstrap>", line 1006, in _find_and_load_unlocked File
   "<frozen importlib._bootstrap>", line 688, in _load_unlocked File
   "<frozen importlib._bootstrap_external>", line 883, in exec_module
   File "<frozen importlib._bootstrap>", line 241, in
   _call_with_frames_removed File "C:UsersAbdulOneDriveDesktopdjango-ecommerce-masterwishlistmodels.py",
   line 3, in <module> from core.models import Item File
   "C:UsersAbdulOneDriveDesktopdjango-ecommerce-mastercoremodels.py",
   line 8, in <module> from location.models import Warehouse, Zone,
   Section, Level File
   "C:UsersAbdulOneDriveDesktopdjango-ecommerce-masterlocationmodels.py",
   line 3, in <module> from core.models import Item ImportError: cannot
   import name 'Item' from partially initialized module 'core.models'
   (most likely due to a circular import)
   (C:UsersAbdulOneDriveDesktopdjango-ecommerce-mastercoremodels.py)

现在,这是一个麻烦。它以前是可以工作的,但现在突然,它显示了这个错误。我知道循环进口是什么意思,但这以前是可行的。现在,'product'字段给了我问题。

from django.db import models
from appsystem.models import Outlet
from core.models import Item, Supplier
from location.models import Warehouse, Zone, Section, Level

class MainPurchases(models.Model):
    METHOD_A = 'CASH'
    METHOD_B = 'CREDIT'
    PAYMENT_METHODS = [
        (METHOD_A, 'CASH'),
        (METHOD_B, 'CREDIT'),
    ]
    product = models.ForeignKey(Item, on_delete=models.PROTECT)
    quantity = models.PositiveSmallIntegerField()
    purchase_price = models.DecimalField(max_digits=6, decimal_places=2)
    paid_amount = models.DecimalField(max_digits=6, decimal_places=2)
    date_created = models.DateTimeField(auto_now_add=True)
    supplier = models.ForeignKey(Supplier, on_delete=models.CASCADE)
    outlet = models.ForeignKey(Outlet, on_delete=models.CASCADE, blank=True, null=True)
    payment_method = models.CharField(max_length=6, choices=PAYMENT_METHODS, default=METHOD_A)

啊,问题是在核心应用程序中,我使用import语句导入一些类(仓库,区域等)。把它去掉就解决了。我还是不知道为什么会这样。

最新更新