Yur*_*upa 3 python django uml django-models
我正在尝试创建一个客户可以喜欢供应商和商店的关系,并在我的类图上(见下图)我有以下关系:
在第一个应用程序中,我有一个person对象,由供应商和客户端继承在第二个应用程序中,我只有一个商店对象(与供应商有向后关系,但它没有在类图上显示,这就是第二个应用程序即时)
问题是客户端与供应商有很多关系,而另一个与商店有很多关系,但关系客户端/存储生成错误,导致app2在应用1之后失效.
有没有办法让通用的多种关系?
因为客户可以拥有许多供应商和许多商店,商店可以拥有许多客户,供应商可以拥有许多客户

我使用的代码:
class Store(models.Model):
    name = models.CharField("Nome", max_length=100)
    description = models.CharField("Descrição", max_length=300)
    class Meta:
        app_label = 'store'
class Person(models.Model):
    first_name = models.CharField("Primeiro Nome", max_length=100)
    last_name = models.CharField("Ultimo Nome", max_length=100)
    class Meta:
        app_label = 'core'
class Vendor(Person):
    bio = models.TextField("Bio", max_length=300, blank=True)
    last_update = models.DateTimeField("Ultima Atualização", auto_now=True)
    class Meta:
        app_label = 'core'
class Client(Person):
    favorite_stores = models.ManyToManyField(Store)
    favorite_vendors = models.ManyToManyField(Vendor)
    class Meta:
        app_label = 'core'
此代码给出了以下错误:
self.models_module = import_module(models_module_name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/core/models.py", line 7, in <module>
    from store.models import Store
  File "/store/models.py", line 6, in <module>
    from core.models import Vendor
而我想在管理员中看到的很简单:

小智 6
只需添加两个ManyToMany关系,而不是导入"Store"模型,直接使用字符串(以避免循环依赖)
class Client(Person):
   favorite_stores = models.ManyToManyField('store.Store')
   favorite_vendors = models.ManyToManyField(Vendor)
| 归档时间: | 
 | 
| 查看次数: | 1010 次 | 
| 最近记录: |