Это мой views.py
Джанго AttributeError, KeyError
def new_note(request):
form = NoteForm(request.POST, user=request.user)
. . .
return render(request, 'newNote.html', {'note_form': NoteForm, 'registered': registered})
Это мой forms.py
class NoteForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
# self.user = kwargs.pop('user', None)
self.user = kwargs.pop('user')
# self.validate = kwargs.pop('validate', False)
super(NoteForm, self).__init__(*args, **kwargs)
groups = StudentGroup.objects.filter(id_nauczyciela=self.user.pk)
# print(self.user.pk)
self.fields['id_groups'].queryset = groups
note_name = forms.CharField(label="Note name", required=True)
class Meta:
model = Note
fields = ('id_groups', 'id_students', 'note_name')
id_groups
является ModelChoseField
В этом коде я пытаюсь взять вошли идентификатор пользователя.
Когда я пытаюсь использовать его я получил ошибку KeyError 'user'
, когда я изменить self.user = kwargs.pop('user')
к self.user = kwargs.pop('user', None)
я получил ошибку как этот
AttributeError: 'NoneType' object has no attribute 'pk'
Я абсолютно уверен, self.user.pk
возвращаемое значение то, что я ожидал.
Мой вопрос: Как справиться с этим типом ошибки?
Пожалуйста, поделитесь своими полными видами.py – utkbansal