Django: возвращение формы django в качестве ответа на ajax-запрос
Я новичок в django.
Теперь я ищу способ получить django форму как ajax ответ.
Я подготовил ajax запрос в моем файле myjs.js
Ajax отправляет запрос по url: 'formJson/<str:skl>/'
и мое представление formJson получает переменную skl
, которая используется как ключ для выбора нужной формы в словаре форм, включенном в это представление.
Как я могу вернуть эту форму и использовать ее в качестве ответа в моей функции успеха ajax? Есть идеи?
myjs.js
const skladnikBox= document.getElementById('wybieraj');
const modalTytul=document.getElementById("exampleModalLabel")
skladnikBox.addEventListener( 'change', e=>{console.log( event.target.value );
const skl=event.target.selectedOptions[0].text;
console.log(skl);
modalTytul.innerText=event.target.selectedOptions[0].text;
``
$("#exampleModal").modal('show');
////////////////ajax///////////////////////////////
$.ajax({
type: 'GET',
url: `formJson/${ skl }/`,
success : function(response){
console.log('success', response);
//
// const skladnikForm = response.data
},
error : function (response){
console.log('error', error)}
})
/////////////////////ajax/////////////////
skladnikBox.selectedIndex = 0;
})
views.py
def formJson (request,skl):
forms={'witamina A':VitAForm,'witamina E':VitEForm,'Hydrokortyzon': HydrokortyzonForm}
form=forms[skl]
context={ 'form':form}
return JsonResponse(context)
urls.py
from django.contrib import admin
from django.urls import path
from . import views
urlpatterns = [
path('', views.home,name='home'),
path('formJson/<str:skl>/', views.formJson, name='formJson')
]