Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class PartnerManageView(generic.UpdateView):
- """
- This multi-purpose view renders out a form to edit the partner's details,
- the associated address and a list of all associated users.
- """
- template_name = 'dashboard/partners/partner_manage.html'
- form_class = PartnerAddressForm
- success_url = reverse_lazy('dashboard:partner-list')
- def get_object(self, queryset=None):
- self.partner = get_object_or_404(Partner, pk=self.kwargs['pk'])
- address = self.partner.primary_address
- if address is None:
- address = self.partner.addresses.model(partner=self.partner)
- return address
- def get_initial(self):
- return {'name': self.partner.name}
- def get_context_data(self, **kwargs):
- ctx = super(PartnerManageView, self).get_context_data(**kwargs)
- ctx['partner'] = self.partner
- ctx['title'] = self.partner.name
- ctx['users'] = self.partner.users.all()
- return ctx
- def form_valid(self, form):
- messages.success(
- self.request, _("Partner '%s' was updated successfully.") %
- self.partner.name)
- self.partner.name = form.cleaned_data['name']
- self.partner.save()
- return super(PartnerManageView, self).form_valid(form)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement