view_budget.py 文件源码

python
阅读 18 收藏 0 点赞 0 评论 0

项目:club-suite 作者: fsxfreak 项目源码 文件源码
def post(self, request, club_id, *args, **kwargs):
    club = Club.objects.get(pk=club_id)

    budget_form = self.budget_form_class()
    budget_form.fields['did'].queryset = Division.objects.filter(cid=club)

    division_form = self.division_form_class

    if 'division' in request.POST:
      division_form = self.division_form_class(request.POST)

      if division_form.is_valid():
        division = division_form.save()
        division.cid = club
        division.save()
        messages.add_message(request, messages.SUCCESS, 'You Have Created a New Division!')
        return HttpResponseRedirect(reverse('suite:budget', args=[club_id]))
      else:
        messages.add_message(request, messages.WARNING, 'Cannot Make Division with Same Name')
        return HttpResponseRedirect(reverse('suite:budget', args=[club_id]))

    elif 'budget' in request.POST:
      budget_form = self.budget_form_class(request.POST)
      if budget_form.is_valid():
        budget = budget_form.save(commit=True)
        budget.save()
      else:
        messages.add_message(request, messages.WARNING, 'Could not create budget.')

    books = self.generate_books(club.division_set.all())
    total_budget = 0
    total_expense = 0
    for book in books:
      total_budget = total_budget + book['total_budget']
      total_expense = total_expense + book['total_expense']

    return render(request, self.template_name, { 'books' : books,
                                                 'club': club,
                                                 'budget_form' : budget_form,
                                                 'division_form' : division_form,
                                                 'total_budget' : total_budget,
                                                 'total_expense' : total_expense})
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号