У меня проблема с регистрацией вакансии [закрыто]
Добрый день! Я разрабатываю приложение на Django для регистрации вакансий, и у меня возникает такая ошибка:
Я не использую models.py, я использую wampserver для сохранения данных
После входа пользователя в систему, он попадает на страницу регистрации вакансии, и пока все хорошо, но когда я нажимаю на сохранение соответствующей вакансии, появляется эта ошибка:
<<1>MultiValueDictKeyError at /store/ 'password'
Views.py
from django.shortcuts import render,redirect
from django.http import HttpResponse
from django.contrib.auth.models import User
from django.contrib.auth import authenticate,login,logout
def home(request):
return render(request, 'home.html')
def create(request):
return render(request, 'create.html')
def store(request):
data = {}
if(request.POST['password'] != request.POST['password-conf']):
data['msg'] = 'Senha e confirmação de senha diferente!'
data['class'] = 'alert-danger'
else:
user = User.objects.create_user(request.POST['name'], request.POST['email'], request.POST['password'])
user.first_name = request.POST['name']
user.save()
user.user_permissions.add(18)
data['msg'] = 'Usuário cadastrado com sucesso!'
data['class'] = 'alert-success'
return render(request, 'create.html',data)
def painel(request):
return render(request, 'painel.html')
def dologin(request):
data = {}
user = authenticate(username=request.POST['user'], password=request.POST['password'])
if user is not None:
login(request, user)
return redirect('/createVaga/')
else:
data['msg'] = 'Usuário ou Senha inválidos!'
data['class'] = 'alert-danger'
return render(request, 'painel.html',data)
def dashboard(request):
return render(request, 'dashboard/home.html')
def logouts(request):
logout(request)
return redirect('/painel/')
def changePassword(request):
user = User.objects.get(email=request.user.email)
user.set_password(request.POST['password'])
user.save()
logout(request)
return redirect('/painel/')
def createVaga(request):
data = {}
data['msg'] = 'Vaga cadastrada com sucesso!'
data['class'] = 'alert-success'
return render(request, 'createVaga.html')
createVaga.html
{% extends 'main.html' %}
{% block content %}
<form name="form-vagaDeEmprego" id="vagaDeEmprego" method="post" action="/store/">
<div class="col-6 mt-4 m-auto">
{% if msg %}
<div class="alert {{class}}">
{{msg}}
</div>
{% endif %}
{% csrf_token %}
<input class="form-control mt-4" type="text" name="nameJob" id="nameJob" placeholder="Nome da vaga de emprego:">
<br>
<select id=cbFaixaSalarial>
<option>R$1.000</option>
<option>R$1.000 a R$2.000</option>
<option>R$2.000 a R$3.000</option>
<option>Acima de R$3.000</option>
</select>
<br>
<br>
<select id="cbEscolaridade">
<option>Ensino fundamental</option>
<option>Ensino médio</option>
<option>Tecnólogo</option>
<option>Ensino Superior</option>
<option>Pós/MBA/Mestrado</option>
<option>Doutorado</option>
</select>
<br>
<input class="btn btn-primary mt-4" type="submit" value="Cadastrar">
</div>
</form>
{% endblock %}
main.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>
Tela de Cadastro e Login
</title>
{% load static %}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous">
<link rel="stylesheet" href="{% static 'css/style.css'%}">
</head>
<body id="bg" style="background-image: url('{% static "media\images\background.jpg" %}');">
<div class="container">
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav mr-auto">
<li class="nav-item">
<a class="nav-link" href="/home/">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/create/">Cadastro de Usuários</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/painel/">Painel de Login</a>
</li>
</ul>
</div>
</nav>
{% block content %}
{% endblock %}
</div>
<s
cript src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-A3rJD856KowSb7dwlZdYEkO39Gagi7vIsF0jrRAoQmDKKtQBHUuLZ9AsSv4jD4Xa" crossorigin="anonymous"></script>
<script src="{% static 'js/javascript.js' %}"></script>
</body>
</html>