Когда я пытаюсь сохранить форму, нажимая кнопку, появляется ошибка значения метода POST в продукте. Вот код представления, я думаю, что это на product = Product.objects.get (id = product_id), я пробовал другие переменные, но он не работает
class LoanApplicationCreateView(AtomicMixin, TemplateView):
template_name = 'products/create_loan_application.html'
model = LoanApplication
form_class = LoanApplicationCreateForm
def get_object(self, queryset=None):
"""Get loan application request object."""
return self.model.objects.get(id=self.kwargs.get('id'))
def get_context_data(self, business_id, **kwargs):
"""Get new loan application form view."""
context = super().get_context_data(**kwargs)
context = dict()
context = super(LoanApplicationCreateView, self).get_context_data(**kwargs)
context['page_name'] = 'new loan application'
context['title'] = 'Add Loan Application'
borrower_business = get_object_or_404(Business, pk=business_id)
context['borrower_business_id'] = borrower_business.id
context['borrower_business_name'] = borrower_business.business_name
data = {'borrower_business': borrower_business}
context['loan_application_form'] = LoanApplicationCreateForm(data=data)
products = Product.objects.all().values_list('id', 'product_type')
product_name = Product.objects.all().values_list('product_name')
context['product_list'] = json.dumps(list(products), cls=DjangoJSONEncoder)
return context
def post(self, request, business_id):
loan_application_form = LoanApplicationCreateForm(data=request.POST)
product_id = request.POST.get('product')
product = Product.objects.get(id=product_id)
if loan_application_form.is_valid():
loan_application_form.save()
else:
errors = ''
for _, error in loan_application_form.errors.items():
errors = '{} {}'.format(errors, error)
messages.error(
request, 'Unable to create the Loan Application. {}'.format(errors), extra_tags='alert alert-danger'
)
return HttpResponseRedirect(self.request.META.get('HTTP_REFERER'))
Я получаю эту ошибку. ..
ValueError at /products/customer/add_loan_application/414c7d8f-c6e0-4121-940c-8e6dd6a321ec/
Cannot assign "'b724ec73-1e24-440b-a960-2c9972a40839'": "LoanApplication.product" must be a "Product" instance.