我需要更改在管理頁面中查看地理數據時顯示的基本地圖。目前它正在使用openstreetmap。我想通過他們的API使用BING地圖。我已經在我的應用程序的另一部分成功完成了這一任務,但我無法弄清楚如何在Admin界面中執行此操作。Django Admin - 使用Bing地圖代替OSM
有沒有人有我可以使用的例子?它甚至不必是地圖,只是覆蓋默認地圖的任何東西。
謝謝!
我需要更改在管理頁面中查看地理數據時顯示的基本地圖。目前它正在使用openstreetmap。我想通過他們的API使用BING地圖。我已經在我的應用程序的另一部分成功完成了這一任務,但我無法弄清楚如何在Admin界面中執行此操作。Django Admin - 使用Bing地圖代替OSM
有沒有人有我可以使用的例子?它甚至不必是地圖,只是覆蓋默認地圖的任何東西。
謝謝!
This網站提供了一個如何使用Mapquest而不是OSM圖塊進行此操作的示例。儘管我沒有將它改編爲Bing,但我確實使它適用於在Python 3.5.0上運行的Django 1.8.6。
它需要創建(或修改現有的)Django管理模板才能使其工作,但OpenLayers提供了可用於Bing參考的html頁面。我沒有足夠的經驗與OpenLayers知道如何做到這一點。
基本上是:
子類GeoModelAdmin,並點按(在GeoDjango文檔更多關於這方面的信息)編輯admin.py
您的新模板,並更換GeoTest
與模型的名字:
class BingGeoAdmin(django.contrib.gis.admin.GeoModelAdmin):
map_template = 'gis/admin/bing.html'
admin.site.register(GeoTest, BingGeoAdmin)
使用Django現有的osm.js
作爲參考創建bing.js
,其中涉及將base_layer塊更改爲新的Bing層。
bing.html
模板,指向bing.js
文件。
非常感謝您的回覆。我們並沒有最終做出改變,這就是爲什麼我沒有改過自新,但你的想法看起來很棒。 – LindaM