def change_resource(request, resource_id):
#import pdb; pdb.set_trace()
if request.method == "POST":
resource = get_object_or_404(EconomicResource, pk=resource_id)
v_help = None
if resource.resource_type.unit_of_use:
v_help = "give me a usable widget"
form = EconomicResourceForm(data=request.POST, instance=resource, vpu_help=v_help)
if form.is_valid():
data = form.cleaned_data
resource = form.save(commit=False)
resource.changed_by=request.user
resource.save()
RraFormSet = modelformset_factory(
AgentResourceRole,
form=ResourceRoleAgentForm,
can_delete=True,
extra=4,
)
role_formset = RraFormSet(
prefix="role",
queryset=resource.agent_resource_roles.all(),
data=request.POST
)
if role_formset.is_valid():
saved_formset = role_formset.save(commit=False)
for role in saved_formset:
role.resource = resource
role.save()
return HttpResponseRedirect('/%s/%s/'
% ('accounting/resource', resource_id))
else:
raise ValidationError(form.errors)
评论列表
文章目录