Django mlbgame对象列表

时间:2017-01-09 22:40:56

标签: python django django-templates

我是Python新手,我知道Java有点大,所以我知道对象。现在,在python中我使用mlbgame来获取一个团队的日程安排。我正在使用游戏(年,月=无,天=无,家=无,远=无)。

这是我的观点

def baseball(request):
    angels_game = mlbgame.games(2017, home='Angels', away='Angels')
    return render(request, 'home/baseball.html', {'games1': games1, 'angels_game': angels_game})

现在这是我的模板

<h1>Anaheim Angels Games</h1>
    {% for anaheim in angels_game %}
        <p>{{ anaheim }}</p>
    {% endfor %}

这是我在页面中的内容

阿纳海姆天使游戏

[<mlbgame.game.GameScoreboard object at 0x7f04f2f0ac50>]

[<mlbgame.game.GameScoreboard object at 0x7f04f31f5978>]

[<mlbgame.game.GameScoreboard object at 0x7f04f2ef22e8>]

[<mlbgame.game.GameScoreboard object at 0x7f04f1e9b048>]

我明白了,我在那里得到了这个对象,但我确实知道如何使用该对象,就像我在Java中使用toString()方法一样。

任何人都可以指引我走上正确的道路吗?

谢谢,

2 个答案:

答案 0 :(得分:0)

  

我认为您需要在后端覆盖列表以获取列表迭代器的输出,例如:[ angle.get_score() for angle in angels_game ]。因为,迭代的结果是GameScoreboard的类,它不够完整..

在这里,我在GameScoreboard的类中找到了函数nice_score()

所以,也许你应该试试这个:

def baseball(request):
    angels_game = mlbgame.games(2017, home='Angels', away='Angels')
    angels_game_list = [ angle.nice_score() for angle in angels_game ]

    return render(request, 'home/baseball.html', 
        {.... 'angels_game': angels_game_list}
    )

答案 1 :(得分:0)

谢谢大家。我在尝试你的想法后找到了答案。

正如Sanca Kembang建议的那样,它在视野中存在问题。有一个名为combine_games的函数,它接受一个对象。这是代码

def baseball(request):
    angels_game = mlbgame.games(2017, home='Angels', away='Angels')
    games = mlbgame.combine_games(angels_game)
    return render(request, 'home/baseball.html', {'games': games})

其他一切都保持不变,我得到了我想要的东西。

Brewers (0) at Angels (0)

Angels (0) at Athletics (0)

Padres (0) at Angels (0)

Angels (0) at Cubs (0) ....