将JavaScript date()转换为Python Django模型。

sim*_*vic 3 javascript python django datetime

我使用Django模型表单将数据提交到数据库。我使用JavaScript使用以下内容自动填写表单

document.getElementById('id_date_received').value = Date();
Run Code Online (Sandbox Code Playgroud)

这将输出:Mon Feb 06 2017 11:39:05 GMT+0000 (GMT) django的models.DateTimeField期望:2017-02-06 11:39

如何转换:Mon Feb 06 2017 11:39:05 GMT+0000 (GMT)2017-02-06 11:39 感谢

Ale*_*x T 5

IMO,最好的解决方案是使用unix时间戳,因为您可以避免与时区和时间解析相关的所有复杂事物。

JS:

js_date = new Date('2012.08.10');

// getTime() returns milliseconds from the UNIX epoch,
// so divide it by 1000 to get the seconds representation.

js_timestamp = js_date.getTime() / 1000;
Run Code Online (Sandbox Code Playgroud)

蟒蛇:

python_date = datetime.datetime.fromtimestamp(js_timestamp)
Run Code Online (Sandbox Code Playgroud)


小智 5

您应该考虑使用Moment.js,它是操作日期和时区格式的最简单的 javascript 库。

所以代码会是这样的:

moment(YOUR_DATE_VARIABLE).format('YYYY-MM-DD HH:mm'); // 2017-02-06 11:39
Run Code Online (Sandbox Code Playgroud)

希望这对您有帮助。