我有一个帖子模型和用户模型,我想根据用户组将帖子分为几组

时间:2019-04-26 02:40:17

标签: django django-models

我有两种模型,即帖子模型和用户模型,我想根据用户的组将帖子分为几类

我在帖子模型中添加了Group的外键,但是我发现当更改帖子用户的组时,帖子的组没有变化,因此我在帖子模型中添加了post_save信号,但是我发现当我更改了用户的组,帖子的组已更新为用户的最后一条记录。似乎该用户模型没有立即保存。ps我在网站后台(/ admin)中更改了用户组

class User(AbstractUser):
    worker_id = models.CharField(max_length=10, verbose_name='worker_id', unique=True)
    avatar = models.ImageField(blank=True, upload_to='avatar/', default='images/default_avatar.jpg')



class Meta(AbstractUser.Meta):
    pass

def post_save_callback(*args, **kwargs):
    print(kwargs)
    user = kwargs['instance']
    print(user.groups.get())
    for post in user.post_author.all():
        # User.objects.get(pk=2).groups.get() # group info
        post.author_group = user.groups.get()
        post.save()
signals.post_save.connect(post_save_callback, sender=User)

0 个答案:

没有答案