Better update() using a nother query

This commit is contained in:
2016-06-13 21:27:31 +02:00
parent 911b19068c
commit 9be82123da

View File

@@ -56,7 +56,7 @@ def home(request):
return redirect("matchday", return redirect("matchday",
ls = ls, ls = ls,
season = season, season = season,
matchday=str(md['groupOrderID']).zfill(2) matchday=str(md).zfill(2)
) )
@login_required @login_required
@@ -165,7 +165,7 @@ def getSeason(request, ls, season):
) )
m.save() m.save()
return redirect("matchday", ls=ls, season=season, matchday=md['groupOrderID']) return redirect("matchday", ls=ls, season=season, matchday=md)
@login_required @login_required
@@ -199,32 +199,29 @@ def update(request, ls, season, cur_md):
m = Match(matchID=unicode(match['matchID']), m = Match(matchID=unicode(match['matchID']),
matchDateTime=datetime.strptime(unicode(match['matchDateTime']), '%Y-%m-%d %H:%M:%S'),
group=int(match['groupID']),
matchday=int(match['groupOrderID']),
matchday_name = match['groupName'],
idTeam1=Team.objects.get(teamID=int(match['idTeam1'])),
idTeam2=Team.objects.get(teamID=int(match['idTeam2'])),
pointsTeam1=pointsTeam1, pointsTeam1=pointsTeam1,
pointsTeam2=pointsTeam2, pointsTeam2=pointsTeam2,
finished=bool(match['matchIsFinished']), finished=bool(match['matchIsFinished']),
season=match['leagueSaison'],
leagueShortcut=match['leagueShortcut']
) )
m.save() m.save(update_fields=['pointsTeam1', 'pointsTeam2', 'finished'])
pointsTeam1=-1 pointsTeam1=-1
pointsTeam2=-1 pointsTeam2=-1
""" evaluate scores """ # evaluate scores
scores = Score.objects.get(client=Mandant.objects.get(name='huse')) scores = Score.objects.get(client=Mandant.objects.get(name='huse'))
finished_matches=Match.objects.filter(finished=True) finished_matches=Match.objects.filter(
finished=True,
leagueShortcut=ls,
season=season,
matchday = cur_md
)
for match in finished_matches: for match in finished_matches:
tipps = Tipp.objects.filter(matchID=match.matchID) tipps = Tipp.objects.filter(matchID=match.matchID)
for tipp in tipps: for tipp in tipps:
score = 0 score = 0
goals_total = match.pointsTeam1 + match.pointsTeam2 goals_total = match.pointsTeam1 + match.pointsTeam2
""" Tipp is acurate """ # Tipp is acurate
if (tipp.pointsTeam1 == match.pointsTeam1 and tipp.pointsTeam2 == match.pointsTeam2): if (tipp.pointsTeam1 == match.pointsTeam1 and tipp.pointsTeam2 == match.pointsTeam2):
if goals_total >= 5: if goals_total >= 5:
score = scores.exact_high score = scores.exact_high
@@ -235,7 +232,7 @@ def update(request, ls, season, cur_md):
tipp.save() tipp.save()
continue continue
""" who won? """ # who won?
winnerReal = None winnerReal = None
if match.pointsTeam1 > match.pointsTeam2: if match.pointsTeam1 > match.pointsTeam2:
winnerReal = 1 winnerReal = 1
@@ -430,7 +427,7 @@ def charts(request, ls, season, pos='default', template_name='charts.html'):
debug = '' debug = ''
if pos == 'default': if pos == 'default':
if get_current_md(ls, season) < 18: if get_current_md(ls) < 18:
pos = 'hin' pos = 'hin'
matches = Match.objects.filter(leagueShortcut=ls, season=season, matchday__lte=17) matches = Match.objects.filter(leagueShortcut=ls, season=season, matchday__lte=17)
else: else:
@@ -554,7 +551,7 @@ def get_current_md(ls):
except: except:
cur_md = {'groupName': u"1. Spieltag", 'groupOrderID': 1} cur_md = {'groupName': u"1. Spieltag", 'groupOrderID': 1}
return(cur_md) return(cur_md['groupOrderID'])
def get_current_ls(): def get_current_ls():
return("em2016") return("em2016")