Как исправить `TypeError: 'AnonymousUser' object is not iterable` в Django
Я использую LoginRequiredMixin в Django. Однако я получаю ошибку.
TypeError: 'AnonymousUser' object is not iterable
Это происходит в этой строке
if Speaker.objects.filter(user=self.request.user, is_deleted=False).count() == 0:
этого кода.
class SpeakerListView(LoginRequiredMixin, ListView):
template_name = 'speaker/list.html'
context_object_name = 'speakers'
model = Speaker
def dispatch(self, request, *args, **kwargs):
# if user does not have speaker, redirect to create view
if Speaker.objects.filter(user=self.request.user, is_deleted=False).count() == 0:
messages.error(request, _('xxx'))
return redirect('speech:speaker_add')
return super().dispatch(request, *args, **kwargs)
Если вы знаете, как решить эту проблему. Пожалуйста, помогите мне!
необходимо проверить, аутентифицирован ли пользователь
class SpeakerListView(LoginRequiredMixin, ListView):
template_name = 'speaker/list.html'
context_object_name = 'speakers'
model = Speaker
def dispatch(self, request, *args, **kwargs):
# if user does not have speaker, redirect to create view
if request.user.is_authenticated and Speaker.objects.filter(user_id=request.user.id, is_deleted=False).count() == 0:
messages.error(request, _('xxx'))
return redirect('speech:speaker_add')
return super().dispatch(request, *args, **kwargs)