Untitled
unknown
python
3 years ago
3.2 kB
9
Indexable
def changeform_view(self, request, object_id=None, form_url='', extra_context=None):
extra_context = extra_context or {}
# дальше для польозвателя post запрос
# пользователя достать текущего
# url = reverse('organizations') # заменить на нужный
# мне надо вызвать тот класс нужно obj.organization_pk этот object это экземпляр модельки
# пользователя можно взять из request auth user или как то так
instance = self.get_object(request, object_id) #достаем текущую организацию
# print(instance.id)
# print(instance.balance)
# print(instance.payment_sum)
# print(instance.payer)
# print(instance.event_executed_status)
org_id = Organization.objects.get(balance=instance.balance).id
current_user = request.user #Достаем текущего пользователя
# print(current_user.is_authenticated)
# print(current_user.id)
url = f'{HOST_URL}{reverse(acc_url_patterns[1].name, args=[org_id])}'
data = {"payment_amount": 2000.00}
contract_number= Organization.objects.get(balance=instance.balance).contract_number
event_=BalanceReplenishmentEvent.objects.filter(balance=instance.balance).last()
extra_context['custom_button'] = mark_safe(f'<form action="{url}" method="POST">'
f'<input type="hidden" name="organisation" value="{org_id}">'
f'<input type="hidden" name="payment_amount" value="{data["payment_amount"]}">'
f'<button type="submit" style="background:var(--button-bg);color: white;" class="closelink">Создать счет</button>'
'</form>')
# надо чтобы был post запрос
# extra_context['custom_button'] = mark_safe(
# f'<form action="{url}" method="POST"><button type="submit" style="background:var(--button-bg);"class="closelink" >Создать счет</button></form>')
# extra_context['custom_button'] = mark_safe(
# f'<form action="{url}" method="POST"><input type="hidden" value="{self.organisation.id}"><button type="submit">Создать счет</button></form>')
# import requests #можно ли добавлять действия с кастомной формой. Загрузка файла через форму , форму для скачивания файла
# #changeform
# response = requests.post(url, headers={'Authorization': 'Token 80abe18d9b71624ee0c02cabdeadf4cc2a870cc5'},
# data={"payment_amount": 2000.00})
# return FileResponse(response.content, as_attachment=True, filename='invoice.pdf')
return super().changeform_view(request, object_id, form_url, extra_context)
Editor is loading...