用Django+Json对百度地图进行标点(项目)

1、先绘制一张中国大地图:可展示中国大致的疫情情况

2、大地图可跳转至各个省份

3、当大地图跳转至重庆,进入百度地图

4、对【小镭】经过的点进行标记

用Django+Json对百度地图进行标点(项目)_第1张图片

点击省份【四川】,可进入四川省份地图,双击退回全国地图

用Django+Json对百度地图进行标点(项目)_第2张图片

 点击省份【重庆】,输入要查询的姓名 ,如【小镭】,提交后进入百度地图

用Django+Json对百度地图进行标点(项目)_第3张图片

可查看到【小镭】经过了两个地点(坐标),并在百度地图上显示

用Django+Json对百度地图进行标点(项目)_第4张图片

 划过跳动的标记点,可查看详细信息

 用Django+Json对百度地图进行标点(项目)_第5张图片

思路:

用户在前端输入要查询的数据,表单提交到后台,后台进行判断,如果传过来的数据能匹配到后台列表里的【姓名】,则返回对应的姓名的【坐标列表】,若没有则返回【查询不到信息】。

(1)配置URL

from django.conf.urls import url
from demo import views
from django.urls import path

urlpatterns = [
    url(r'^T/$', views.home, name='demo'),
]

(2)定义视图函数

from django.shortcuts import render
from django.conf import settings
from django.http import HttpResponse,JsonResponse
import json

def home(request):
    Dict = {'小镭': [(106.457091,29.566355),(106.475186,29.571111)],
            '小黑': [(106.430691,29.826659),],
}
    data1 = ' ... '
    data2 =  ' '
    if request.method == 'POST':
        data1= request.POST.get('DATA1')
        data2 = request.POST.get('DATA2')
        for i in Dict0.keys():
            if i==data1:
                data2 = Dict0[i]
                data1 = data1
                print("_______________________")
                print(data1)
                print(data2)
                data2 = json.dumps(data2)
                print("找到信息")
                break
            else:
                print(data2)
                print("未找到信息")
                data2 = ('未找到信息')
        # locals() 函数会以字典类型返回当前位置的全部局部变量。
        return render(request, 'T.html', locals())
    return render(request, 'T.html', locals())

(3)编写html




    
    
    
    

    百度地图展示
    
    


{% csrf_token %}

请输入要查询的信息

全国地图






HTML5 Canvas实现中国地图DEMO演示









你可能感兴趣的:(Django,HTML,JSON,html,django,python)