我正在使用每个表单的模型,但是我无法保存记录,并且jsconsole向我发送了http 200代码,服务器也向我发送了http / POST / http 1.1 200,但是在mysql db中却没有保存记录,怎么了?
这是我的功能
def permiso_create(request):
"""Gestion de solicitudes"""
if request.method == 'POST' and request.is_ajax():
form = Permiso_create(request.POST)
if form.is_valid():
Permiso = form.save(commit=False)
Permiso.usuario = request.user
Permiso.save()
return JsonResponse({'status': 'true', 'msg': 'Procesado Correctamente'})#devolviendo json en js console
else:
return JsonResponse({'status': 'false', 'msg': 'Los datos no son validos'})#devolviendo json en js console
form = Permiso_create()
return render(request, 'plantillas/permiso.html', {'form':form})
这是我的模型。py
class Users(AbstractBaseUser, PermissionsMixin): #Estructura base de userDjango personalizado
usuario = models.CharField(max_length = 200, null=False, blank=False, unique=True)
nombre = models.CharField(max_length = 200, null=True, blank=True)
apellido = models.CharField(max_length = 200, null=True, blank=True)
numero_empleado = models.IntegerField(null=True, blank=True)
correo = models.EmailField(max_length = 50, null=True, blank=True)
area = models.CharField(max_length = 200, null=True, blank=True)
d_pendientes = models.IntegerField(null=True, blank=True)
h_pendientes = models.FloatField( blank=True, null=True)
f_init = models.DateField(max_length = 200, null=True, blank=True)
init_vac = models.DateField(max_length = 200, null=True, blank=True)
fin_vac = models.DateField(max_length = 200, null=True, blank=True)
ul_vac_tomadas = models.IntegerField(null=True, blank=True)
is_active = models.BooleanField(default=True, null=True, blank=True)
is_staff = models.BooleanField(default=False, null=True, blank=True)
class Permiso(models.Model): #modelo para permisos( exclusivamente)
permiso_choice = (
('Permiso', 'Permiso'),
('Vacaciones', 'Vacaciones')
)
sts_choice = (
('estatus de espera', 'Por confirmar'),
('permiso rechazado', 'Rechazar'),
('aceptar permiso', 'Aceptado')
)
id = models.AutoField(primary_key=True)
disponer = models.CharField(max_length=255, choices=permiso_choice, null=True, blank=False)
usuario = models.ForeignKey(Users, on_delete=models.CASCADE, null=False, blank=False)
dia_creado = models.DateTimeField(auto_now_add=True, null=True)
razon = models.TextField(max_length=255, null=True, blank=False)
periodo_i = models.DateField(null=True, blank=False)
periodo_f = models.DateField(null=True, blank=False)
dias_disponer = models.IntegerField(null=True, blank=False)
horas_disponer = models.FloatField(null=True, blank=False)
status = models.CharField(max_length=255, default='Por confirmar', choices=sts_choice, null=True, blank=False)
这是我的forms.py
class Permiso_create(forms.ModelForm):
class Meta:
model = Permiso
fields = [
'disponer',
'razon',
'periodo_i',
'periodo_f',
'dias_disponer',
'horas_disponer',
'status',
]
感谢一切