def edit_project(request, project_slug): project = get_object_or_404(Project, slug=project_slug, unit__in=request.units) if request.method == 'POST': projectform = ProjectForm(request.POST, instance=project) if projectform.is_valid(): projectform.save() messages.success(request, 'Updated project ' + str(project.project_number)) return HttpResponseRedirect(reverse(projects_index)) else: projectform = ProjectForm(instance=project) projectform.fields['unit'].choices = [(u.id, u.name) for u in request.units] return render(request, 'ra/edit_project.html', {'projectform': projectform, 'project': project})
def edit_project(request, project_slug): project = get_object_or_404(Project, slug=project_slug) if request.method == 'POST': projectform = ProjectForm(request.POST, instance=project) if projectform.is_valid(): projectform.save() messages.success(request, 'Updated project ' + str(project.project_number)) return HttpResponseRedirect(reverse(projects_index)) else: projectform = ProjectForm(instance=project) projectform.fields['unit'].choices = [(u.id, u.name) for u in request.units] return render(request, 'ra/edit_project.html', {'projectform': projectform, 'project': project})
def new_project(request): projectform = ProjectForm(request.POST or None) #Again, the user should only be able to create projects for units that they belong to. projectform.fields['unit'].choices = [(u.id, u.name) for u in request.units] if request.method == 'POST': if projectform.is_valid(): project = projectform.save() messages.success(request, 'Created project ' + str(project.project_number)) return HttpResponseRedirect(reverse('ra.views.projects_index')) return render(request, 'ra/new_project.html', {'projectform': projectform})