В Django FormView я не могу увидеть форму

У меня есть некоторые проблемы, когда я не могу увидеть ни форму, ни параметр. вот мой код Здесь я передаю ID из предыдущего выбора как параметр

URL файл

path('make_payment/<int:jugador_id>', views.Payment_ViewMix.as_view(), name = "make_payment"),

view fiel: здесь я пытаюсь поймать параметр, а также получить текущее время и получить форму, когда я удаляю функцию get_context_data, форма отображается правильно, когда я добавляю ее снова, ничего не отображается, и ID никогда не отображается в шаблоне HTTP

class Payment_ViewMix(FormView):
    form_class =  PagoJugadorForm
    template_name = "includes/make_payment.html"
    context_object_name = 'payment'

           
    def get_context_data(self, **kwargs):
        idjug = self.kwargs
        idjugador = int(idjug['jugador_id'])
        print(idjugador)
        context = {
            'idjugador':idjugador,
            }
        return context

    def form_valid(self, form):
        context = self.get_context_data(context)
        print(context)
        fecha_pago = datetime.datetime.now()
        print(fecha_pago)
        jugador_id = context['idjugador']
        fecha_pago = fecha_pago
        #jugador_id.instance = self.object
        monto = form.cleaned_data['monto']
        notas = form.cleaned_data['notas']
        id_categoriapago =  form.cleaned_data['id_categoriapago']
        id_group_categoria =form.cleaned_data['id_group_categoria']
        JugadorPagos.objects.create(
            idjugador = jugador_id, 
            fecha_pago = fecha_pago,
            monto = monto, 
            notas = notas,
            id_categoriapago = id_categoriapago,
            id_group_categoria = id_group_categoria, 
            )
        return super(Payment_ViewMix, self).form_valid(form)

файл формы : здесь в форме я не показываю ID, потому что это тот, который я хочу получить из заданного параметра, а текущая дата - это та, которую я хочу присвоить "fecha_pago"

class PagoJugadorForm(forms.ModelForm):
    
    class Meta:
        model = JugadorPagos
        fields = (#'idjugador',
                  'monto',
                  #'fecha_pago',
                  'id_categoriapago',
                  'id_group_categoria',
                  'notas'
                  )
        
        widgets = {
            'notas': forms.TextInput(
                attrs = {
                    'placeholder': 'ingrese texto'})
            }
        

HTML поле:

Здесь я просто хочу напечатать ID и форму


{% block content %}


    <h3 class = "text-center mt-5"> Jugador ID: {{payment.idjugador}}</h3>
    <form  method="post">
        {% csrf_token %}
        <table class="table table-striped" header = "Datos del jugador">
            <tbody>
                <tr>
                    <th scope="row">Monto</th>
                        <td>{{form.monto}}</td>
                    </tr>
                    <tr>
                        <th scope="row">Notas</th>
                            <td>{{form.notas}}</td>
                    </tr>
                    <tr>
                        <th scope="row">id_categoriapago</th>
                            <td>{{form.id_categoriapago}}</td>
                    </tr>
                    <tr>
                        <th scope="row">id_group_categoria</th>
                        <td>{{form.id_group_categoria}}</td>
                    </tr>

            </tbody>
        </table>
        <button type="submit" >Realizar Pago </button>
    </form>

когда я удаляю def get_context_data форма отображается правильно Надеюсь, вы сможете мне помочь, потому что у меня нет никакой ошибки.

Наилучшие пожелания

Вам нужно переопределить get_context_data(...) таким образом, чтобы он вызывал свой суперкласс (оригинальный метод get_context_data)

def get_context_data(self, **kwargs):
    context = super().get_context_data(**kwargs)
    idjug = self.kwargs
    idjugador = int(idjug['jugador_id'])
    
    context['idjugador'] = idjugador
        
    return context
Вернуться на верх