Request.GET.get(' ') возвращает None

У меня есть следующий URL: http://127.0.0.1:8000/application_form/Network%20Adminstrator/ URL генерируется с помощью: path('application_form/<str:job_title>/', views.ApplicationForm.as_view(), name='application_form')

Я продолжаю пробовать get_data = self.request.GET.get('job_title') и ожидаю получить Network Adminstrator, но вместо этого он возвращает None

Мой urls.py:

urlpatterns = [
path('application_form/<str:job_title>/', views.ApplicationForm.as_view(), name='application_form'),

]

views.py:

class ApplicationForm(CreateView):
    model = Requirements
    form_class = ApplicationForm
    template_name = 'requirements/job_specs.html'

    # Passes the request object to forms
    def get_form_kwargs(self):
        kwargs = super(ApplicationForm, self).get_form_kwargs()
        kwargs['request'] = self.request
        return kwargs

forms.py:

class ApplicationForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        self.request = kwargs.pop('request')
        super(ApplicationForm, self).__init__(*args, **kwargs)
        get_data = self.request.GET.get('job_title')
        print(get_data)
        dic = {'job_title__job_title': get_data}
        self.fields['qualifications'].queryset = Requirements.objects.get(**dic)

    class Meta:
        model = Applicants
        fields = ['email', 'qualifications']

    email = forms.EmailField(label='', max_length=100, required=True, widget=forms.TextInput(
        attrs={'class': 'form-group form-control input-lg ', 'placeholder': 'Email'}), )
    qualifications = forms.ModelMultipleChoiceField(queryset=None, widget=forms.CheckboxSelectMultiple)

Любые мысли или идеи? Я все еще немного новичок в программировании на Django и буду очень признателен за ваше время и знания.

URL kwargs находятся не в запросе, а в самом классе. Попробуйте использовать метод self.kwargs.get('job_title'). Если его нет в вашем ApplicationForm, вы можете передать их из метода get_form_kwargs так же, как вы передали Request

Вернуться на верх