Django按日期(周)分页



我正在制作一个网站,显示本周的足球比赛,从你打开网站的那一天到六天后(当前周),我想按日期分页。

例如<previous> <19 feb - 25 feb> <next>,然后当我按下一个<previous> <26 feb - 4 march> <next>

在views.py

matches是一个字典列表,每个字典是一个游戏,包含游戏日期和其他信息,并按日期排序

def home(request):
start = datetime.now().date()
end = today + timedelta(6)
matches = request_games(today, after_week)
return render(request, "sporty/home.html",{
"matches": matches,
"start" : start,
"end": end
})
在home。

{% for match in matches %}
//match info
{% endfor %}

为了让您创建不同周的集合,也许是整个赛季,您需要创建另一个由您已经创建的比赛字典组成的字典,在您分页时访问每个'matches'字典。

这时,您需要通过一个单选按钮或一些javascript函数来确定要查看哪个字典。下面的链接讨论了使用javascript和django的正确方法,虽然你不能在django模板中使用javascript变量,但你可以使用ajax来解决它。

在django模板中使用javascript变量

您还可以为每个匹配字典创建一个div元素。然后,在css文件中,将每个元素设置为display:none。然后,您可以从javascript访问该元素并更改div元素的显示,以便在按下某个按钮时显示它。

function changeGames(){
document.getElementById('div1').style.display= 'block' ;
document.getElementById('div2').style.display= 'none' ;
}

最新更新