Exemplo n.º 1
0
    def form_valid(self, form):
        self.object = form.save(commit=False)
        # Ищем id текущего аутентифицированного пользователя
        user_id = User.objects.all().values().filter(
            username=self.request.user)[0]['id']
        # Добавляем текущего пользователя в поле user формы
        self.object.user = User.objects.get(id=user_id)

        # Проверка, есть ли уже такая подписка
        subscriber_list = Subscriber.objects.filter(user=self.object.user)
        save_flag = True
        for item in list(subscriber_list):
            if item.category == self.object.category:
                save_flag = False
                break
        if save_flag:
            self.object.save()
            return super().form_valid(form)
        else:
            self.success_url = '/news/'
            return HttpResponseRedirect(FormMixin.get_success_url(self))
Exemplo n.º 2
0
 def get_success_url(self):
     from django.views.generic.edit import FormMixin
     return FormMixin.get_success_url(self)