Итак, я новичок в python и Django. Я создал вид и страницу html для очень простой c формы, которая использует API матрицы расстояния Google. Я могу отобразить вывод json обратно на мою страницу html без каких-либо проблем. вопрос в том, как мне получить расстояние в милях, чтобы оно появилось на моей странице html. Прямо сейчас я просто получаю сырой json. но я не могу получить только расстояние в милях.
Текущий вывод со страницы HTML:
origin ['660 Celebration Ave, Celebration, FL 34747, USA']
destination ['878 Columbus Ave, New York, NY 10023, USA']
distance in miles: [{'elements': [{'distance': {'text': '1,093 mi', 'value': 1759428},
'duration': {'text': '16 hours 13 mins', 'value': 58364}, 'status': 'OK'}]}]
'' 'views.py
def mapdistance_view(request):
distance = {}
if 'From' in request.GET:
origin = request.GET['From']
destination = request.GET['To']
apikey = "mykey"
url = 'https://maps.googleapis.com/maps/api/distancematrix/json?mode=driving&units=imperial&origins=' + origin + ',DC&destinations=' + destination + ',' + apikey
response = requests.get(url)
distance = response.json()
print(url)
print(distance)
return render(request, 'mapdistance.html', {'distance': distance})
'' '
Html page' ''
{% block content %}
<h2>map API</h2>
<form method="GET"> {% csrf_token %}
<label>Pickup Location:</label><input type="text" name="From"><br>
<label>Delivery Location:</label><input type="text" name="To"><br>
<button type="submit">post to google map</button>
</form>
{% if distance %}
<p><strong>origin {{ distance.origin_addresses }}</strong></p>
<p><strong>destination {{ distance.destination_addresses }}</strong></p>
<p><strong>distance in miles: {{ distance.rows }}</strong></p>
{% endif %}
{% endblock %}
'' '