def team(request, team_id, order="hit"): thisteam = Team.objects.get(teamID=team_id) team_info = TeamStat() team_info.name = thisteam.name team_info.teamID = thisteam.teamID game_all = Game.objects.filter(Q(away=team_id) | Q(home=team_id)) game_list = [] for game in game_all: g = GameStat() if (game.away.teamID != int(team_id)): opp = game.away else: opp = game.home game_result = game.get_result() if (len(game_result) == 0): result = '和' team_info.tie += 1 elif (game_result[0].teamID == int(team_id)): result = '勝' team_info.win += 1 else: result = '敗' team_info.lose += 1 team_info.game_played += 1 scores = game.get_scores() g.gameID = game.gameID g.date = game.date g.location = game.location g.opp = opp g.scores = str(sum(scores[0])) + ' : ' + str(sum(scores[1])) g.result = result game_list.append(g) # sort by date game_list = sorted(game_list, key=attrgetter('date')) team_info.stat() members = Member.objects.filter(team__teamID=team_id) members_bat = [] members_pit = [] team_bat = Hitter() team_pit = Pitcher() for player in members: #batting data bat = Batting.objects.filter(member__memberID=player.memberID, team=thisteam.teamID) if bat.exists(): hitter = Hitter() for bat_detail in bat: hitter.name = player.name hitter.id = player.memberID hitter.games_played += 1 hitter.pa += bat_detail.pa hitter.single += bat_detail.single hitter.double += bat_detail.double hitter.triple += bat_detail.triple hitter.hr += bat_detail.hr hitter.rbi += bat_detail.rbi hitter.r += bat_detail.run hitter.bb += bat_detail.bb hitter.so += bat_detail.so hitter.sf += bat_detail.sf hitter.stat() members_bat.append(hitter) team_bat.add(hitter) team_bat.stat() members_bat = sorted(members_bat, key=attrgetter(order), reverse=True) #pitching data pit = Pitching.objects.filter(member__memberID=player.memberID, team=thisteam.teamID) if pit.exists(): pitcher = Pitcher() for pit_detail in pit: pitcher.name = player.name pitcher.games_played += 1 pitcher.id = player.memberID pitcher.win += pit_detail.win pitcher.lose += pit_detail.lose pitcher.outs += pit_detail.outs pitcher.pa += pit_detail.pa pitcher.so += pit_detail.so pitcher.bb += pit_detail.bb pitcher.h += pit_detail.h pitcher.hr += pit_detail.hr pitcher.r += pit_detail.r pitcher.er += pit_detail.er pitcher.go += pit_detail.go pitcher.fo += pit_detail.fo pitcher.stat() members_pit.append(pitcher) team_pit.add(pitcher) team_pit.stat() context = { 'thisteam': thisteam, 'team_info': team_info, 'game_list': game_list, 'members_bat': members_bat, 'members_pit': members_pit, 'team_bat': team_bat, 'team_pit': team_pit } return render(request, 'sbleague/team.html', context)
def team(request , team_id , order="hit") : thisteam = Team.objects.get(teamID = team_id) team_info = TeamStat() team_info.name = thisteam.name team_info.teamID = thisteam.teamID game_all = Game.objects.filter(Q(away = team_id) | Q(home = team_id) ) game_list = [] for game in game_all: g = GameStat() if( game.away.teamID != int(team_id) ): opp = game.away else: opp = game.home game_result = game.get_result() if( len(game_result) == 0 ): result = '和' team_info.tie += 1 elif( game_result[0].teamID == int(team_id) ): result = '勝' team_info.win += 1 else: result = '敗' team_info.lose += 1 team_info.game_played += 1 scores = game.get_scores() g.gameID = game.gameID g.date = game.date g.location = game.location g.opp = opp g.scores = str(sum(scores[0])) + ' : ' + str(sum(scores[1])) g.result = result game_list.append(g) # sort by date game_list = sorted(game_list , key=attrgetter('date')) team_info.stat() members = Member.objects.filter(team__teamID = team_id) members_bat= [] members_pit= [] team_bat = Hitter() team_pit = Pitcher() for player in members: #batting data bat = Batting.objects.filter(member__memberID = player.memberID , team = thisteam.teamID) if bat.exists() : hitter = Hitter() for bat_detail in bat: hitter.name = player.name hitter.id = player.memberID hitter.games_played += 1 hitter.pa += bat_detail.pa hitter.single +=bat_detail.single hitter.double +=bat_detail.double hitter.triple +=bat_detail.triple hitter.hr += bat_detail.hr hitter.rbi += bat_detail.rbi hitter.r += bat_detail.run hitter.bb+= bat_detail.bb hitter.so +=bat_detail.so hitter.sf +=bat_detail.sf hitter.stat() members_bat.append(hitter) team_bat.add(hitter) team_bat.stat() members_bat=sorted(members_bat,key=attrgetter(order),reverse=True) #pitching data pit = Pitching.objects.filter(member__memberID = player.memberID , team = thisteam.teamID) if pit.exists() : pitcher = Pitcher() for pit_detail in pit: pitcher.name = player.name pitcher.games_played +=1 pitcher.id = player.memberID pitcher.win+=pit_detail.win pitcher.lose+=pit_detail.lose pitcher.outs+=pit_detail.outs pitcher.pa+=pit_detail.pa pitcher.so+=pit_detail.so pitcher.bb+=pit_detail.bb pitcher.h+=pit_detail.h pitcher.hr+=pit_detail.hr pitcher.r+=pit_detail.r pitcher.er+=pit_detail.er pitcher.go+=pit_detail.go pitcher.fo+=pit_detail.fo pitcher.stat() members_pit.append(pitcher) team_pit.add(pitcher) team_pit.stat() context = {'thisteam' : thisteam, 'team_info':team_info, 'game_list': game_list, 'members_bat': members_bat ,'members_pit':members_pit, 'team_bat' : team_bat, 'team_pit' : team_pit} return render(request , 'sbleague/team.html',context)