我在 POST 请求中获取日期而不是日期和时间数据

I am getting the date instead of date and time data in a POST request

我的网站上有一个 date range picker

当用户输入日期和时间范围时,我想在 startDateendDate

表格内分别发送

daterangepicker 代码:

    $('input[name="datetimes"]').daterangepicker({
        timePicker: true,
        timePickerIncrement: 5,
        startDate: moment().startOf('hour'),
        endDate: moment().startOf('hour').add(32, 'hour'),
        locale: {
          format: 'YYYY-MM-DD hh:mm'
        },
        opens: 'center',
        drops: 'auto'
    });

这就是我尝试过的:

$('#formid').submit(function(e) {
    e.preventDefault();
    let startDate = ($('#datetimes').data('daterangepicker').startDate).format('YYYY-MM-DD hh:mm');
    let endDate = ($('#datetimes').data('daterangepicker').endDate).format('YYYY-MM-DD hh:mm');
    $(this).append('<input type="hidden" name="start_date" value='+startDate+' /> ');
    $(this).append('<input type="hidden" name="end_date" value='+endDate+' /> ');
    this.submit();
});

this.submit(); 之前,我做了一个 console.log(startDate),这就是我得到的:

我正在获取日期和时间(如预期的那样),但是如果我尝试在视图(django 后端)中执行 print(request.POST),这就是我得到的:

不知何故,在 POST 期间 HH:mm 消失了。

如何在 POST 期间保留 hh:mm 的值?

更新:

views.py

def add_new_task(request):
    context = {}
    context['nbar'] = 'index'
    if request.method == 'POST':
        print(request.POST)
    return render(request, 'index.html', context)

models.py

class ToDoList(models.Model):
    title = models.CharField(max_length=60)
    description = models.TextField()
    start_date = models.DateTimeField()
    end_date = models.DateTimeField()
    user = models.ForeignKey(
        User,
        null=True,
        blank=True,
        on_delete=models.SET_NULL,
    )

这是一个不可能的结果,但是否有可能是您在隐藏输入中缺少 value 属性周围的双引号这一事实导致了问题?

尝试将其更改为:

$(this).append('<input type="hidden" name="start_date" value="'+startDate+'" /> ');
$(this).append('<input type="hidden" name="end_date" value="'+endDate+'" /> ');