Как переопределить виджет карты в администраторе Django, в котором данные Geom загружаются через LayerMapping?Python

Программы на Python
Ответить
Anonymous
 Как переопределить виджет карты в администраторе Django, в котором данные Geom загружаются через LayerMapping?

Сообщение Anonymous »

Этот вопрос является продолжением моего первоначального вопроса о динамическом изменении цвета слоев шейп-файла на карте Django Admin Leaflet.
В моем проекте GeoDjango я загружаю геометрические данные через Метод LayerMapping. Ниже приведен файл load.py, который я использую для этого:

Код: Выделить всё

from django.contrib.gis.utils import LayerMapping
from .models import Municipality

municipality_mapping = {
'reg_code': 'Reg_Code',
'reg_name': 'Reg_Name',
'pro_name': 'Pro_Name',
'mun_code': 'Mun_Code',
'mun_name': 'Mun_Name',
'mean_ctrl': 'mean_ctrl',
'geom': 'MULTIPOLYGON',
}

zonalmeanctrl_shp = "path/to/shapefile.shp"

def run(verbose=True):
lm = LayerMapping(Municipality, zonalmeanctrl_shp, municipality_mapping, transform=False)
lm.save(strict=True, verbose=verbose)
В admin.py я настроил панель администратора с помощью LeafletGeoAdmin:

Код: Выделить всё

from django.contrib import admin
from .models import Municipality
from leaflet.admin import LeafletGeoAdmin

class MunicipalityAdmin(LeafletGeoAdmin):
list_display = ('pro_name', 'reg_code', 'reg_name', 'mun_code', 'mun_name', 'mean_ctrl')

admin.site.register(Municipality, MunicipalityAdmin)
Теперь я хотел бы пойти дальше и настроить виджет карты для динамического оформления геометрии на основе определенных атрибутов (например, изменения цвета на основе значения mean_ctrl). Как я могу переопределить виджет карты в администраторе Django, чтобы применить динамические цвета к этим шейп-файлам, загруженным через LayerMapping?

Подробнее здесь: https://stackoverflow.com/questions/791 ... ed-via-lay
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»