您好我正在为书籍订阅类型创建一个django模型
class Subscription(models.Model):
user = models.ForeignKey(User,null=True, blank=True)
group = models.ForeignKey(Group, null=True, blank=True)
book_list = models.ForeignKey(Books, null=True)
def create(cls, (user, group), **kwds):
return cls(user=user, group=group, books=books, **kwds)
我想以这样的方式创建它:选择字段用户或字段组但不是两者 上面的语法给出错误“用户对象不可迭代” 谁能帮我这个? 提前致谢
答案 0 :(得分:0)
首先,如果你想创建这样的话,一个建议是将管理器添加到这个模型,例如。 SubscriptionManager和写入create方法。它可能是这样的。
def create(self, subscriber, **kwds):
if isinstance(subscriber, User):
#save subscriber instance in user field
elif isinstance(subsriber, Group):
#save subscriber instance is group field
PS:我只为这两个问题提供了解决方案,也照顾了books_list