javascript - 如何将多个 date1 即(10/12/2016)、date2 即(23/12/2016)传递到 django 中的url?

标签 javascript jquery python html django

我试图传递starting_date,即(10/12/2016),report_to_date,即(23/12/2016)

starting_date = '31/12/2015'
report_to_date = '31/12/2016'  
<a class ="btn btn-success" href="/downloadpdf/"+starting_date+"/"+report_to_date+"/">Download</a>

以下网址无效 -

url(r'^/downloadpdf/(?P<starting_date>[A-Za-z0-9+/=]+)/(?P<report_to_date>[A-Za-z0-9+/=]+)/$', views.report, name='report'),

我需要将日期(即“31/12/2015”和“31/12/2016”)格式/日期对象添加到我的 View 函数中:

def report(request,starting_date,report_to_date):
        starting_date = parse('starting_date')
        report_to_date = parse('report_to_date')

这不起作用。请帮助我..提前致谢。

最佳答案

正如@Felk 在 comment 中所说您需要将日期格式更改为 dd-mm-YYYY 以避免可读性问题。

为此,您需要更改 urlpattern 以接受 - 和数字:

url(r'^downloadpdf/(?P<starting_date>[0-9-]+)/(?P<report_to_date>[0-9-]+)$', views.report, name='report')

现在您可以在模板中使用此模式,如下所示:

<a href="{% url 'report' starting_date='17-12-2016' report_to_date='17-12-2016' %}">date</a>

要解析 View 内的日期值,您可以使用 strptime功能:

import datetime
...
def report(request, starting_date, report_to_date):
    starting_date = datetime.datetime.strptime(starting_date, '%d-%m-%Y').date()
    report_to_date = datetime.datetime.strptime(report_to_date, '%d-%m-%Y').date()

关于javascript - 如何将多个 date1 即(10/12/2016)、date2 即(23/12/2016)传递到 django 中的url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41195446/

相关文章:

python - 用 python 中的命令行/shell 版本替换将文件加载到列表

javascript - geocoder.geocode() 如何工作?

javascript - 如何使用 SweetAlert2 重置 CKeditor4

python - 如何从字节数组中读取特定值?

javascript - 删除数组的重复数组: javascript

javascript - 在隐藏 ul 之前触发 li 的点击事件

python - 线性模型面板OLS : Regression output with stars

javascript - React Material-UI 在 DataGrid 中添加链接

javascript - 根据预定义数组对数组(结果集)进行排序

Javascript 游戏碰撞检测