【发布时间】:2017-04-27 06:35:33
【问题描述】:
我正在尝试为关系添加属性。
我有一个模型Scheduler、Product 和User。
数据库中有多个Scheduler 对象。每个可以有多个产品。每个产品都有一些调度程序。
用户可以选择与产品一起使用的调度程序。
我希望用户能够命名这个调度器(注意一个调度器可以被多个用户使用多个产品)。
用例:
用户创建产品并从允许的调度程序中进行选择。当他们选择调度程序时,他们可以为该调度程序分配一些名称。
对于user1,带有id=5 的调度程序有name='My scheduler - everyday'
对于 user2,相同的调度程序 (id=5) 具有 name='Everyday schedule'
class Product(models.Model):
user = models.ForeignKey(User, null=False, blank=False)
scheduler = models.ForeignKey('Scheduler', null=True, blank=True, related_name='products')
class Scheduler(models.Model):
weekhours = models.ManyToManyField('WeekHour', related_name='schedulers')
identificator = models.TextField(null=True,blank=True)
有没有可能以某种简单的方式做到这一点?
【问题讨论】:
-
为什么不向调度器添加字段名称和类型?然后用户将选择调度程序的类型并为其指定名称。
-
因为如果一个用户1为调度程序指定名称,它也会影响其他用户。
-
确保将其标记为已解决
标签: python django django-models foreign-keys django-orm