Thanks Naveen, I have try this code but when I clicked saved, the views redirect but no post was showing in the list view.
def new_rental(request, pk):
rentalproperty = get_object_or_404(RentalProperty, pk=pk)
user = UserModel.objects.first()
if request.method == 'POST':
form = NewRentalPropertyForm(request.POST, request.FILES)
#contract_form = NewContractForm(request.POST, prefix = "contracts")
if form.is_valid():
print ("all validation passed")
rentalproperty = form.save()
#contract_form.cleaned_data["rentalproperty"] = rentalproperty
#contract.rentalproperty = rentalproperty
#contract = contract_form.save()
return HttpResponseRedirect(reverse("rental:new_contract"))
else:
messages.error(request, "Error")
else:
form = NewRentalPropertyForm()
#contract_form = NewContractForm(prefix = "contracts")
return render(request, 'rental/new_rental.html', {
'rentalproperty': rentalproperty,
'form': form,
#'contract_form': contract_form,
})
def new_contract(request, pk):
rentalproperty = get_object_or_404(RentalProperty, pk=pk)
if request.method == 'POST':
form = NewContractForm(request.POST)
if form.is_valid():
contract = form.save(commit=False)
contract.rentalproperty = rentalproperty
contract.save()
return HttpResponseRedirect(reverse("rental:home"))
else:
messages.error(request, "Error")
else:
form = NewContractForm()
return render(request, 'rental/new_contract.html', {
'rentalproperty': rentalproperty,
'form': form,
})