Работает на локальном хосте, но не на heroku
Я постоянно получаю эту ошибку Server 500 при развертывании на Heroku. Он отлично работает на моем локальном хосте. Другие страницы на сайте работают нормально, но на этой есть News-API. Не знаю, что делать дальше.
Debug ERROR
\`KeyError at /
'articles'
Request Method: GET
Request URL: https://lvl27-9617c0ce663b.herokuapp.com/
Django Version: 4.2.10
Exception Type: KeyError
Exception Value:
'articles'
Exception Location: /app/news/views.py, line 13, in index
Raised during: news.views.index
Python Executable: /app/.heroku/python/bin/python
Python Version: 3.9.18
Python Path:
\['/app/.heroku/python/bin',
'/app',
'/app/.heroku/python/lib/python39.zip',
'/app/.heroku/python/lib/python3.9',
'/app/.heroku/python/lib/python3.9/lib-dynload',
'/app/.heroku/python/lib/python3.9/site-packages'\]
Server time: Tue, 19 Mar 2024 23:03:02 +0000
Traceback Switch to copy-and-paste view
/app/.heroku/python/lib/python3.9/site-packages/django/core/handlers/exception.py, line 55, in inner
response = get_response(request) …
Local vars
/app/.heroku/python/lib/python3.9/site-packages/django/core/handlers/base.py, line 197, in \_get_response
response = wrapped_callback(request, \*callback_args, \*\*callback_kwargs) …
Local vars
/app/news/views.py, line 13, in index
a = gaming_news\['articles'\]\`
CODE
from django.shortcuts import render
import requests
import os
from dotenv import load_dotenv, dotenv_values
from newsapi import NewsApiClient
load_dotenv()
API = os.getenv('NEWS_API')
def index(request):
url = (f"https://newsapi.org/v2/everything?q=gaming&apiKey={API}")
gaming_news = requests.get(url).json()
a = gaming_news['articles']
urlToImage = []
author = []
title = []
description = []
url = []
for i in range(len(a)):
f = a[i]
urlToImage.append(f['urlToImage'])
author.append(f['author'])
title.append(f['title'])
description.append(f['description'])
url.append(f['url'])
news_list = zip(urlToImage, author, title, description, url)
context = {'news_list': news_list}
return render(request, 'news/news.html', context)
Я пытался изменить код, но я уже слишком долго этим занимаюсь.