def test_results_cache_refreshed(self): contributor = baker.make(UserProfile, first_name="Peter") evaluation = baker.make(Evaluation, state="published") baker.make(Contribution, contributor=contributor, evaluation=evaluation) cache_results(evaluation) results_before = get_results(evaluation) form_data = get_form_data_from_instance(UserForm, contributor) form_data["first_name"] = "Patrick" form = UserForm(form_data, instance=contributor) form.save() results_after = get_results(evaluation) self.assertCountEqual( (result.contributor.first_name for result in results_before.contribution_results if result.contributor), ("Peter", ), ) self.assertCountEqual( (result.contributor.first_name for result in results_after.contribution_results if result.contributor), ("Patrick", ), )
def user_create(request): form = UserForm(request.POST or None, instance=UserProfile()) if form.is_valid(): form.save() messages.success(request, _("Successfully created user.")) return redirect('staff:user_index') else: return render(request, "staff_user_form.html", dict(form=form))
def user_edit(request, user_id): user = get_object_or_404(UserProfile, id=user_id) form = UserForm(request.POST or None, request.FILES or None, instance=user) courses_contributing_to = Course.objects.filter(semester=Semester.active_semester(), contributions__contributor=user) if form.is_valid(): form.save() messages.success(request, _("Successfully updated user.")) return redirect('staff:user_index') else: return render(request, "staff_user_form.html", dict(form=form, object=user, courses_contributing_to=courses_contributing_to))
def user_edit(request, user_id): user = get_object_or_404(UserProfile, id=user_id) form = UserForm(request.POST or None, request.FILES or None, instance=user) courses_contributing_to = Course.objects.filter( semester=Semester.active_semester(), contributions__contributor=user) if form.is_valid(): form.save() messages.success(request, _("Successfully updated user.")) return redirect('staff:user_index') else: return render( request, "staff_user_form.html", dict(form=form, object=user, courses_contributing_to=courses_contributing_to))