Python 将html下拉选项作为api调用Django传递
试图构建一个简单的Django应用程序,用户可以在其中输入文本搜索条件并从新闻提供者的下拉列表中进行选择,然后这些提供者作为api调用传递(最终目的地是新闻api) views.pyPython 将html下拉选项作为api调用Django传递,python,django,api,Python,Django,Api,试图构建一个简单的Django应用程序,用户可以在其中输入文本搜索条件并从新闻提供者的下拉列表中进行选择,然后这些提供者作为api调用传递(最终目的地是新闻api) views.py def api_request(request): search_term = request.POST.get('textfield') source = request.POST.get('list_providers') url = 'https://newsapi.org/v2/ev
def api_request(request):
search_term = request.POST.get('textfield')
source = request.POST.get('list_providers')
url = 'https://newsapi.org/v2/everything?'
parameters = {
'q': '%s' % search_term,
'sources': '%s' % source,
}
response = requests.get(url, params=parameters)
response_json = response.json()
articles = response_json['articles']
return render(request, 'news.html', context={"articles": articles, "search_term": search_term, "source": source})
home.html
{% block content %}
<form method="POST">
{% csrf_token %}
<input type="text" name="textfield", placeholder="Enter search criteria">
<br/>
<select name = "list_providers">
<option value = "option1">Option 1</option>
<option value = "option2">Option 2</option>
<option value = "option3">Option 3</option>
</select>
<br/>
<button type="submit">Search</button>
</form>
{% if search_term & sources %}
{% for title, author, date, des in mylist %}
<h3>Title:</h3> {{title}}
<h4>Published by:</h4> {{author}}
<h4>Published at:</h4> {{date}}
<h4>Summary:</h4> {{des}}
{{value | linebreaks}}
<br/>
{% endfor %}
{% endif %}
{% endblock %}
我已经能够无误地通过多个文本输入标准,并通过测试调用确认参数的语法正确,因此我相信问题可能出在下拉列表的默认选择标准中
KeyError at /
'articles'