Рендеринг нескольких html-файлов и представлений и отображение их в одном html-файле Django
Ниже показаны мои файлы
index.html
<!-- Modal -->
<div class="modal fade modal{{link.id}}" id="createmodal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Create Contact</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<form method='POST'>
{% csrf_token %}
<div class="modal-body">
{{form.as_p}}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="Submit" class="btn btn-primary btn-delete" data-sid="{{link.id}}" >Create Contact</button>
<input type="submit" class="btn btn-primary save-btn">
</div>
</form>
</div>
</div>
</div>
new_contact.html
<!-- Modal -->
<div class="modal fade modal{{link.id}}" id="createmodal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Create Contact</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<form method='POST'>
{% csrf_token %}
<div class="modal-body">
{{form.as_p}}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="Submit" class="btn btn-primary btn-delete" data-sid="{{link.id}}" >Create Contact</button>
<input type="submit" class="btn btn-primary save-btn">
</div>
</form>
</div>
</div>
</div>
views.py
def new_contact(request):
data = Contact.objects.all()
form = CreateContactForm()
if request.method == 'POST':
form = CreateContactForm(request.POST)
if form.is_valid():
form.save()
messages.success(request, 'Link edited successfully.')
else:
messages.error(request, form.errors)
return render(request,'app/editModal.html', context={'form':form,'data':data})
def index(request):
data = Contact.objects.all()
return render(request,'app/editModal.html', context={'form':form})
Я хочу отобразить new_contact.html файл в index.html файл. Я уже использовал тег include, но он не работает для моего требования. тег include включает этот html файл в индексный файл, но не отображает функцию new_contact.
Я хочу отобразить new_contact.html файл с new_contact функцией в index.html файл.
Спасибо
Важное правило: Don't repeat yourself!. А может быть, вы по ошибке вставили тот же html-код?
Нельзя и не следует смешивать различные представления. Также нельзя иметь два forms с одинаковым именем, потому что первое будет перезаписано вторым.