下午好
我有一个带有不同类型字段的表单,包括一个需要一小时的表单(这里我不使用计时器,而是使用textinput)。为了开发这个表单,我在泛型视图createview
旁边使用了一个.form
类;除需要输入一小时的数据外的所有数据都被保存。当使用另一个通用视图显示数据时,此字段显示为None
。我试过用TextInput
代替TimeInput
,但没有任何区别。这是我的模型:
class Reserva(models.Model):
ESTADOS_CHOICES = (
('AP', 'Aprobado'),
('PE', 'Pendiente'),
('NE', 'Negado'),
)
SALONES_CHOICES = (
('S1', 'Salon 1'),
('S2', 'Salon 2'),
('S3', 'Salon 3'),
('CA', 'Cafeteria'),
)
usuario = models.ForeignKey(User)
fecha_peticion = models.DateTimeField(auto_now_add=True, blank=True, null=True)
asunto = models.CharField(max_length=80)
fecha_inicio = models.DateField(blank=True, null=True)
fecha_fin = models.DateField(blank=True, null=True)
salon = models.CharField(max_length=2, choices=SALONES_CHOICES, blank=True, null=True)
hora_inicio = models.TimeField()
hora_fin = models.TimeField()
estado = models.CharField(max_length=2, choices=ESTADOS_CHOICES, blank=True, null=True)
observaciones = models.CharField(max_length=100, blank=True, null=True)
这是我的处方。形式
class F_EnvioPeticion(forms.ModelForm):
hora_inicio = forms.TimeField(input_formats=('%H:%M'), widget=forms.TimeInput(format='%H:%M')),
class Meta:
model = Reserva
fields =[
'asunto',
'fecha_inicio',
'fecha_fin',
'salon',
'hora_inicio',
'estado',
]
labels = {
'asunto' :'Este es mi asunto:',
'fecha_inicio' :'Día de inicio',
'fecha_fin' :'Día de fin',
'salon' :'Elija un salón:',
'hora_inicio' :'Ingrese una hora de inicio',
'estado' :'Estado',
}
widgets = {
'asunto' : forms.TextInput(attrs={'class': 'form-control', 'placeholder': 'Ejm: Reunión de docentes'}),
'fecha_inicio' : forms.DateInput(attrs={'class': 'form-control', 'placeholder': 'dia/mes/año'}),
'fecha_fin' : forms.DateInput(attrs={'class': 'form-control', 'placeholder': 'dia/mes/año'}),
'salon' : forms.Select(attrs={'class': 'form-control'}),
'hora_inicio' : forms.TimeInput(attrs={'class': 'form-control'}),
'estado' : forms.Select (attrs={'class': 'form-control'}),
}
我的班级表.form
class F_EnvioPeticion(forms.ModelForm):
hora_inicio = forms.TimeField(input_formats=('%H:%M'), widget=forms.TimeInput(format='%H:%M')),
class Meta:
model = Reserva
fields =[
'asunto',
'fecha_inicio',
'fecha_fin',
'salon',
'hora_inicio',
'estado',
]
labels = {
'asunto' :'Este es mi asunto:',
'fecha_inicio' :'Día de inicio',
'fecha_fin' :'Día de fin',
'salon' :'Elija un salón:',
'hora_inicio' :'Ingrese una hora de inicio',
'estado' :'Estado',
}
widgets = {
'asunto' : forms.TextInput(attrs={'class': 'form-control', 'placeholder': 'Ejm: Reunión de docentes'}),
'fecha_inicio' : forms.DateInput(attrs={'class': 'form-control', 'placeholder': 'dia/mes/año'}),
'fecha_fin' : forms.DateInput(attrs={'class': 'form-control', 'placeholder': 'dia/mes/año'}),
'salon' : forms.Select(attrs={'class': 'form-control'}),
'hora_inicio' : forms.TimeInput(attrs={'class': 'form-control'}),
'estado' : forms.Select (attrs={'class': 'form-control'}),
}
我的观点.views
class caoss(CreateView):
login_required = True
model = Reserva
form_class = F_EnvioPeticion
template_name = 'reserva0.html'
success_url = 'escritorio'
def form_valid(self, form):
form.instance.usuario = self.request.user
form.save()
return super(caoss, self).form_valid(form)
和页面.html
{% if f_peticion.errors %}
<p style="color: red;">Hay unas cosas que debe corregirse</p>
{% endif %}
<form action="{% url 'caoss' %}" method="post" role="form">
{% csrf_token %}
<div class="form-group">
<label for="{{ form.asunto.id_for_label }}">{{ form.asunto.label }}</label>
{{ form.asunto }}
</div>
<div class="form-group">
<label for="{{ form.fecha_inicio.id_for_label }}">{{ form.fecha_inicio.label }}</label>
{{ form.fecha_inicio }}
</div>
<div class="form-group">
<label for="{{ form.fecha_fin.id_for_label }}">{{ form.fecha_fin.label }}</label>
{{ form.fecha_fin }}
</div>
<div class="form-group">
<label for="{{ form.salon.id_for_label }}">{{ form.salon.label }}</label>
{{ form.salon }}
</div>
<div class="form-group">
<label for="{{ form.hora_inicio.id_for_label }}">{{ form.hora_inicio.label }}</label>
{{ form.hora_inicio }}
</div>
<div class="form-group">
<label for="{{ form.estado.id_for_label }}">{{ form.estado.label }}</label>
{{ form.estado }}
</div>
<button class="btn btn-outline btn-primary btn-lg btn-block" type="submit" name="consultar">Consultar</button>
</form>
我已经审阅了所有西班牙语和英语版本的相关问题,我没有发现问题,希望您能帮助我
目前没有回答
相关问题 更多 >
编程相关推荐