Django - форма python ничего не возвращает на веб-странице
Я пытаюсь добавить пользователя в группы, используя rest api в Python. Дело в том, что когда я проверяю веб-страницу, она ничего не возвращает. Похоже, что я не могу увидеть там свою форму. Есть ли что-то неправильное в моих кодах? И если я делаю это неправильно, как я могу вернуть форму в шаблоне?
Коды Python:
class AddUserToGroupForm2(TemplateView):
template_name ='artifactory.html'
def add_artifactory(request):
if request.method == 'POST':
form = ArtifactoryGroupForm(request.POST)
if form.is_valid():
name = form.cleaned_data['name']
Group_Artifactory = form.cleaned_data['Group_Artifactory']
user = User.objects.create(
name = name,
Group_Artifactory = Group_Artifactory,)
headers = {
'Content-Type': 'application/json; charset=UTF-8',
}
data = json.dumps( {"groups": Group_Artifactory})
response = requests.post(f'https:*******/api/security/users/{name}', headers=headers, data=data,verify=False,
auth=(ADMIN_USERNAME , ADMIN_PASSWORD))
print(response.content)
return render(request, 'homepage.html', {'form': form})
Html коды:
<form method="POST">
{% csrf_token %}
<h3>Artifactory Groups</h3>
<div id="list1" class="dropdown-check-list">
{{form}}
</div>
<div id="button" class="field">
<button class="btn" type=submit>
Add User to Groups </button>
</div>
</form>
Вы не передаете значение формы в шаблон в запросе get, поэтому оно не отражается в html шаблоне.
def add_artifactory(request):
if request.method == 'POST':
form = ArtifactoryGroupForm(request.POST)
if form.is_valid():
name = form.cleaned_data['name']
Group_Artifactory = form.cleaned_data['Group_Artifactory']
user = User.objects.create(
name = name,
Group_Artifactory = Group_Artifactory,)
headers = {'Content-Type': 'application/json; charset=UTF-8'}
data = json.dumps( {"groups": Group_Artifactory})
response = requests.post(f'https:*******/api/security/users/{name}',
headers=headers,
data=data,
verify=False,
auth=(ADMIN_USERNAME , ADMIN_PASSWORD))
print(response.content)
return render(request, 'homepage.html', {'form': form})
else:
form = ArtifactoryGroupForm()
return render(request, 'homepage.html', {'form': form})