Функция() получила несколько значений для аргумента 'pk'

В настоящее время моей программе необходимо печатать отчеты для каждой записи базы данных в модели настроек.

Он считывает pk модели и использует его для проверки элементов записи настроек.

Однако я получаю ошибку trialBalanceMonthly() got multiple values for argument 'TBMreports_pk' при нажатии на кнопку, которая должна распечатать отчет.

Вот мой код :

reportsHome.html:

{% for x in model %}
             <a href="#" class='list-group-item active'>{{ x.Complex }}  Reports</a>

        <div>
            <hr>
             <a href="{% url 'trialBalanceMonthly' TBMreports_pk=x.pk %}" type="button" class="btn btn-outline-primary btn-sm" >{{ x.Complex }} Trial Balance Monthly</a>
             <a href="{% url 'trialBalanceYearly' TBYreports_pk=x.pk %}" type="button" class="btn btn-outline-primary btn-sm" >{{ x.Complex }} Trial Balance YTD</a>
            <br>
             <a href="{% url 'incomeStatementMonthly' ISMreports_pk=x.pk %}" type="button" class="btn btn-outline-primary btn-sm" >{{ x.Complex }} Income Statement Monthly</a>
             <a href="{% url 'incomeStatementYearly' ISYreports_pk=x.pk %}" type="button" class="btn btn-outline-primary btn-sm" >{{ x.Complex }} Income Statement YTD</a>
            <hr>
        </div>
        <br>
{% endfor %}

Views.py (я удалил часть кода, который генерирует переменные, чтобы сделать этот вопрос более воспроизводимым)

-- Вот как выглядит каждая из функций представления отчетов

def trialBalanceMonthly(TBMreports_pk):
    pkForm = get_object_or_404(SettingsClass, pk=TBMreports_pk)

    complexName = pkForm.Complex

        ### Printing Trial Balance PDF
        response = HttpResponse(content_type='application/pdf')
        response['Content-Disposition'] = 'attachment; filename=TrialBalanceMonthly' + \
                                          str(datetime.now()) + '.pdf'
        response['Content-Transfer-Encoding'] = 'binary'

        content = {'printDescM': printDescM, 'printAccM': printAccM, "xtrbMonth": xtrbMonth,
                   'xCreditTotalM': xCreditTotalM, 'xDebitTotalM': xDebitTotalM, 'complexName': complexName,
                   'printZeroM': printZeroM}
        html_string = render_to_string('main/reports/trialBalanceMonthly.html', content)
        html = HTML(string=html_string)

        result = html.write_pdf()

        with tempfile.NamedTemporaryFile(delete=True) as output:
            output.write(result)
            output.flush()

            output.seek(0)
            response.write(output.read())
    else:
        redirect('main/reportsHome')

Urls.py:

    #Print Each Report
    path('accConnect/trialBalanceMonthly/<int:TBMreports_pk>' , views.trialBalanceMonthly, name='trialBalanceMonthly'),
    path('accConnect/trialBalanceYearly/<int:TBYreports_pk>' , views.trialBalanceYearly, name='trialBalanceYearly'),
    path('accConnect/incomeStatementMonthly/<int:ISMreports_pk>', views.incomeStatementMonthly, name='incomeStatementMonthly'),
    path('accConnect/incomeStatementYearly/<int:ISYreports_pk>', views.incomeStatementYearly, name='incomeStatementYearly'),
]

Ниже приведено точное сообщение об ошибке (когда я нажимаю на кнопку Trial balance monthly)

TypeError at /accConnect/trialBalanceMonthly/2
trialBalanceMonthly() got multiple values for argument 'TBMreports_pk'
Вернуться на верх