#django #django-views
#django #django-просмотры
Вопрос:
У меня есть представление:
@login_required
def add_auditor(request, pk, pk2):
company_details = get_object_or_404(Company, pk=pk)
user_profile = get_object_or_404(Profile, pk=pk2)
company_details.auditor.add(user_profile.name)
company_details.save()
return redirect(reverse('company:search_auditors' , pk=company_details.pk))
URL перенаправления в этом представлении не работает, поскольку в нем есть параметр первичного ключа.
Когда я пытаюсь add_auditor или запустить view, он выдает мне эту ошибку:
TypeError: reverse() got an unexpected keyword argument 'pk'
Как передать параметр первичного ключа в URL перенаправления?
Есть идеи
Комментарии:
1. Что вы подразумеваете под не работает ?
2. Он не перенаправляет в нужное место, а выдает мне эту ошибку
reverse() got an unexpected keyword argument 'pk'
Ответ №1:
Данные должны быть переданы через kwargs
аргумент, как показано ниже,
return redirect(reverse('company:search_auditors', kwargs={"pk": company_details.pk}))
Ссылка: Django reverse()
Ответ №2:
Вы должны передать kwargs в функцию reverse(), используя следующий синтаксис:
return redirect(reverse('company:search_auditors' , kwargs={'pk':company_details.pk}))