Django view, который перенаправляет на другой домен - PullRequest
0 голосов
/ 09 мая 2018

Как перенаправить на другой домен с python django и передать дополнительную информацию?

Например, я хочу перенаправить на https://ssl.dotpay.pl/test_payment/ и дать дополнительную информацию, чтобы URL выглядел следующим образом https://ssl.dotpay.pl/test_payment/?id=123456&amount=123.00&description=Test но я не хочу генерировать URL в моем представлении, просто передать данные в формате json или что-то в этом роде.

Как это сделать?

Ответы [ 2 ]

0 голосов
/ 17 мая 2018

это сгенерированный URL по тому, что я имел в виду 'ssl.dotpay.pl/test_payment/?id=123456&amount= уг

Не забудьте поставить протокол перед вашим URL (или хотя бы двумя слешами). Таким образом, Джанго увидит в этом абсолютный путь. Из вашего комментария кажется, что вы перенаправляете на ssl.dotpay.pl то, что будет рассматриваться как локальный путь, а не как другой домен.

Это то, с чем я столкнулся. (См. вопрос Я положил на стеке потока и ответ )

Так что в вашем случае вы можете использовать следующее:

class MyView(View):
    def get(self, request, *args, **kwargs):
        url = 'https://ssl.dotpay.pl/test_payment/'
              '?id=123456&amount={}&description={}'.format(123.00, 'Test')
        return HttpResponseRedirect(url)

Вы также можете использовать redirect из django.shortcuts вместо HttpResponseRedirect

0 голосов
/ 09 мая 2018

Предполагая, что вы используете функциональное представление, вы, вероятно, могли бы сделать что-то вроде этого в вашем представлении:

from django.http import HttpResponseRedirect

def theview(request):
    # your logic here
    return HttpResponseRedirect(<theURL>)
...