2

我有一个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)

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}}. 我将如何timestamp使用此 Jquery 代码填充 froms 字段。

如果我没有错,那么我们可以通过以下代码来做到这一点:

$('#id_timestamp').val($('#time').val())

ApplicationForm中字段id_timestamp的ID在哪里。timestamp但是我应该如何编写代码,这样我也可以ApplicationFormtemplate级别填充其余字段。

4

2 回答 2

2
<form action="" method="POST">
{{ form.as_p }}
<input type="submit" value="{% trans "Add " %}" /> 
</form>
<script>
$(document).ready(function(){
    $('#id_timestamp').timepicker();
});
</script>
于 2012-08-15T12:57:02.177 回答
0

您可以将SplitDateTimeWidget用于时间戳字段。然后在模板上,您可以访问时间输入$('#id_timestamp_0').timepicker();或类似的东西

于 2012-08-15T12:56:32.333 回答