Я установил поле, в котором пользователь может выбрать диапазон дат (Start, End):
if request.method == 'POST':
fecha = (request.POST.get('datefilter')).split(' - ')
start = datetime.strptime(
fecha[0].strip(), "%Y-%m-%d").date()
end = datetime.strptime(
fecha[1].strip(), "%Y-%m-%d").date()
, когда я печатаю переменную start после выбора диапазона дат, я получаю правильную дату, которая была выбранапользователь.Теперь мне нужно взять их обоих (начало и конец) и отправить их на страницу HTML, где я собираюсь их использовать, но когда я пытаюсь отправить их так:
return render(request, "path/page.html", {"start": start, "end": end})
и получить их вот таквнутри скрипта на странице HTML
<script>
var start = {{start | safe}};
console.log(start);
var end = {{end | safe}};
console.log(end);
</script>
вместо даты, которую я пытаюсь отправить из представления, я получаю целое число.
, например.Если я хочу вызвать данные с 25-01-17 по 25-01-18
25-01-17 будет дата начала и 25-01-18 дата окончания, поэтому, когда я печатаю эти переменные вВ представлении, отображаемом в консоли, я получаю правильную дату, выбранную пользователем.
print(start)
print(end)
output:
25-01-17
25-01-18
, но когда я пытаюсь напечатать те же самые переменные в скрипте на html-странице, я получаю что-то другое
console.log(start);
console.log(end);
output:
7
6
Я понял, что происходящее - математическая операция.25 - 01 = 24 - 17 = 7.
Как решить эту проблему?