Как только система обнаружит, что вы уже пригласили 2 пользователей, ваш профиль автоматически сохранится в списке выпускников
. Пожалуйста, посмотрите на эту картинку, например:
это таблица списка выпускников.
Как вы можете видеть на картинке, Джо Дио уже пригласил 2 пользователей ( miro и Джастин ), (вы можете увидеть это у Спонсора )
Я надеюсь, что вы можете помочь мне разобраться с помощью сигнала django, спасибо в advance:)
i wi sh пример, который я сделал, если бы вы поняли, что я хотел получить
это мои models.py
class User(models.Model):
firstname = models.CharField(max_length=500, null=True,blank=True)
lastname = models.CharField(max_length=500, null=True, blank=True)
middlename = models.CharField(max_length=500, null=True, blank=True)
birthday = models.CharField(max_length=500, null=True, blank=True)
Email = models.CharField(max_length=500,null=True,blank=True)
Sponsor_User = models.ForeignKey('self', on_delete=models.CASCADE,blank=True, null=True)
class User_GraduateList(models.Model):
User = models.ForeignKey(User, related_name='+', on_delete=models.CASCADE, blank=True)
def __str__(self):
suser = '{0.User}'
ОБНОВЛЕНИЕ это ответ мр @ AKS
class User_GraduateList(models.Model):
User = models.ForeignKey(User, related_name='+', on_delete=models.CASCADE, blank=True)
@receiver(post_save, sender=User)
def create_graduates(sender, instance, created, **kwargs):
sponsor = instance.Sponsor_User
if created and sponsor:
if sponsor.user_set.count() >= 2:
if not User_GraduateList.objects.filter(User=sponsor).exists():
User_GraduateList.objects.create(User=sponsor)
это не сработало.