KeyError at /verify/ 'order_id'

У меня проблема на сайте магазина, когда я хочу подтвердить свой заказ, когда я нажимаю на подтверждение на странице оплаты, он выдает эту ошибку.

ошибка

Internal Server Error: /verify/
Traceback (most recent call last):
  File "C:\Users\QK\Desktop\MAworkshop\.venv\Lib\site-packages\django\core\handlers\exception.py", line 55, in inner
    response = get_response(request)
               ^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\QK\Desktop\MAworkshop\.venv\Lib\site-packages\django\core\handlers\base.py", line 197, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\QK\Desktop\MAworkshop\.venv\Lib\site-packages\django\views\generic\base.py", line 104, in view
    return self.dispatch(request, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\QK\Desktop\MAworkshop\.venv\Lib\site-packages\django\views\generic\base.py", line 143, in dispatch
    return handler(request, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\QK\Desktop\MAworkshop\cart\views.py", line 124, in get
    order_id = request.session['order_id']
               ~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "C:\Users\QK\Desktop\MAworkshop\.venv\Lib\site-packages\django\contrib\sessions\backends\base.py", line 53, in __getitem__
    return self._session[key]
           ~~~~~~~~~~~~~^^^^^
KeyError: 'order_id'
[26/Jul/2024 09:38:14] "GET /verify/?Authority=000000000000000000000000000001476833&Status=OK HTTP/1.1" 500 83027
Not Found: /favicon.ico
[26/Jul/2024 09:38:14] "GET /favicon.ico HTTP/1.1" 404 5053

Я спросил у некоторых людей, что мне делать, чтобы решить мою проблему, и они сказали мне, что я не установил order_id в сессии.

view.py

Я не мог ничего придумать, я просил других людей попробовать, но они тоже не смогли мне помочь

Думаю, здесь лучше использовать "request.session.get('order_id')" вместо "request.session['order_id']". Попробуйте. Надеюсь, ваша ошибка будет исправлена.

Вернуться на верх