Поместите request.user.email в другое поле модели - PullRequest
0 голосов
/ 10 марта 2019

Я пытаюсь получить электронную почту пользователя из пользовательской модели и поместить ее в поле для другой модели, код работает и счетчик отлично, но строка добавления - это не код:

models.py

class Posts(models.Model):
    author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    title = models.CharField(blank=True, max_length=100)
    slug = models.SlugField(null=True, blank=True)
    contain = models.TextField(blank=True)
    post_image = models.ImageField(upload_to="post_img", default='post_img/humanity.jpg')
    post_published = models.DateTimeField(blank=True, auto_now_add=True)
    post_updated = models.DateTimeField(blank=True, auto_now=True)
    post_deleted = models.BooleanField(default=False)
    post_approved = models.BooleanField(default=False)
    post_sponsored = models.CharField(max_length=100, null=True, blank=True, default = None)
    post_sponsored_accepted = models.BooleanField(default=False)

    def save(self, *args, **kwargs):
        if not self.slug:
            self.slug= slugify(self.title)
            super(Posts, self).save(*args, **kwargs)

    def __str__(self):
        return f'Author: {self.author}, Title:{self.title}, Posted: {self.post_published}'

views.py

def post_check(request, pk):
    pos = Posts.objects.get(pk=pk)
    u = UserProfile.objects.get(user=request.user)
    if u.sp_counter < 3:
        pos.post_sponsored = request.user.email
        u.sp_counter += 1
        u.save()
        messages.success(request, 'طلبك قيد المراجعة، الرجاء انتظار الموافقة')
        return redirect('index')
    else:
        messages.warning(request, 'وصلت الحد الاقصى للكفالات')
        return redirect('index')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...