我有model.py:
class usercommand(models.Model):
user = models.ForeignKey(User, blank=False)
a_field = models.PositiveIntegerField(null=True, blank=True)
timestamp = models.DateTimeField(blank=True, null=True)
与i相关使用带有user
输入隐藏字段的创建Django模型表单。 forms.py:
class ApplicationForm(forms.ModelForm):
class Meta:
model = userCommand
widgets = {
'user': forms.HiddenInput()
}
正如您所看到的,有三个字段可用于输入。但我填写了views.py
中的用户字段:
def views_method(request, object_id):
if request.method == 'POST':
form = ApplicationForm(request.POST)
if form.is_valid():
form_inst = form.save(commit=False)
form_inst.user = request.user
form_inst.save();
return HttpResponseRedirect(reverse('user_list'))
else:
form = ApplicationForm()
extra_context = {
'form':ApplicaitonForm(initial={'user': request.user.pk})
}
return direct_to_template(request, 'template/remote.html',
extra_context=extra_context)
现在我用在remote.html
:
<form action="" method="POST">
{{ form.as_p }}
<input type="submit" value="{% trans "Add " %}" />
</form>
我需要使用Jquery编写的以下选择器从模板级别填充时间戳字段:
<input class="time" type="text" name="start" id="start" />
$('input.time').timepicker();
但我无法理解,我该怎么做?因为我正在使用{{form.as_p}}
。我将如何使用此Jquery代码填充froms timestamp
字段。
如果我没有错,那么我们可以通过以下代码来实现:
$('#id_timestamp').val($('#time').val())
其中id_timestamp
是ApplicationForm中timestamp
字段的ID。但是我应该如何编写代码,这样我也可以填充ApplicationForm
template
级别的其余字段。
答案 0 :(得分:2)
<form action="" method="POST">
{{ form.as_p }}
<input type="submit" value="{% trans "Add " %}" />
</form>
<script>
$(document).ready(function(){
$('#id_timestamp').timepicker();
});
</script>
答案 1 :(得分:0)
您可以将SplitDateTimeWidget用于时间戳字段。然后在模板上,您可以通过$('#id_timestamp_0').timepicker();
或类似的内容访问时间输入