#python #django
Вопрос:
У меня есть функция просмотра(«Просмотр A»), которая сначала вызывается, а затем я вызываю свой платежный шлюз, который является «платежным шлюзом paytm», после завершения транзакции вызывает «Просмотр B».
Итак, теперь я хочу, чтобы значения, которые были представлены в «представлении A», были переданы в «Представление B».
Просто для информации я использую Django, а не Django rest
Решение, которое я пробовал, Я пробовал Использовать Session #Для хранения значения в представлении переменной сеанса A:-
request.session['message'] = request.POST.get("message")
#для извлечения значения из переменной сеанса
Вид В:-
request.session.get('message')
Любая помощь или руководство будут полезны, так как я застрял уже довольно давно.
Заранее спасибо.
Комментарии:
1. Использование сеанса должно сработать, какие проблемы у вас возникли? Позволяет ли ваш платежный шлюз добавлять метаданные/дополнительную информацию к запросу, который вы затем можете получить?
2. Правильно ли я говорю, что вы хотите вызвать просмотр A, затем платежный шлюз, затем вызвать просмотр B, используя информацию, доступную из вызова для просмотра A? Можете ли вы привести мне пример того, какую информацию вы пытаетесь передать между двумя представлениями? Связано ли это с оплатой? Я бы, вероятно, посоветовал не использовать сеанс для получения любой информации, необходимой между вызовами платежного шлюза. Вместо этого вы должны создать какой-то объект в базе данных с этой информацией, а затем получить доступ к этому объекту на основе информации, возвращаемой платежным шлюзом, например, заранее известной части мета-информации, такой как номер заказа
3. @MarkBarrett информация, которую я пытаюсь передать, — это сообщение, которое я хочу сохранить с деталями транзакции, которые я получаю от шлюза
4. @IainShelvington у меня нет исследований по этому поводу ….я проверю это
5. @SachinRajput, Что это конкретно за шлюз? Что-то вроде PayPal? Какое сообщение вы хотите сохранить? Общий процесс обработки платежа в этом случае будет примерно таким: Соберите информацию для облегчения платежа, такую как сумма, валюта и т.д., Сгенерируйте номер заказа, сохраните все это в базе данных, затем передайте номер заказа шлюзу в некотором поле «мета». Когда шлюз ответит, он вернет это поле «мета», которое вы затем сможете использовать для поиска строки в базе данных, содержащей информацию, которую вы намеревались сохранить. Например, в PayPal есть «пользовательское» поле для этого и полоса «мета».