Advertisement
kastielspb

Custom admin button

Aug 10th, 2018
233
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.27 KB | None | 0 0
  1. from django.utils.text import mark_safe
  2.  
  3. @admin.register(RealtyObject)
  4. class RealtyObjectAdmin(admin.ModelAdmin):
  5.     readonly_fields = ['contact']
  6.  
  7.     def contact(self, obj):
  8.         return mark_safe(f'<input type="submit" value="Обновить контакты" name="_update_contact" />')
  9.  
  10.     def response_change(self, request, obj):
  11.         if "_update_contact" in request.POST:
  12.             print('Updating contact...')
  13.             _contact = realty_import_controller.get_service_object_contact(
  14.                 service_name=obj.alien_name,
  15.                 contact_id=obj.alien_creator_id
  16.             )
  17.             if _contact:
  18.                 obj.alien_creator_contact = _contact
  19.                 obj.save()
  20.                 self.message_user(
  21.                     request,
  22.                     f'Контактные данные были успешно обновлены!',
  23.                     messages.SUCCESS
  24.                 )
  25.             else:
  26.                 self.message_user(
  27.                     request,
  28.                     f'Контактные данные не удалось обновить!',
  29.                     messages.ERROR
  30.                 )
  31.             return HttpResponseRedirect(".")
  32.         return super().response_change(request, obj)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement