Листовка - загружается только одна плитка [дубликат]

Объекты базы данных Django используют один и тот же метод save () для создания и изменения объектов.

obj = Product.objects.get(pk=pk)
obj.name = "some_new_value"
obj.save()

Как Django знает UPDATE или INSERT Если атрибут первичного ключа объекта установлен на значение, которое оценивается как True (т. е. значение, отличное от None или пустая строка), Django выполняет UPDATE. Если атрибут первичного ключа объекта не установлен или UPDATE ничего не обновлял, Django выполняет INSERT.

Ref .: https://docs.djangoproject.com /en/1.9/ref/models/instances/

4
задан patrickcipot 16 July 2015 в 14:05
поделиться

2 ответа

Я бы предположил, что размер карты при инициализации является виновником.

Листовка должна знать размер элемента, в который он встроен при инициализации. Листовка использует эту информацию, чтобы знать, сколько плиток загружается и т. Д. Кроме того, любые программные изменения (или изменения, которые не могут быть легко обнаружены листом) до размера карты, должны сопровождаться ссылкой map.invalidateSize(..) .

Я подозреваю, что после того, как вы установили размер, Leaflet не смог правильно прочитать новый размер элемента #map. Попытайтесь недействить размер потом или выполните инициализацию асинхронно. Я бы добавил:

setTimeout(function () {
    map.invalidateSize();
}, 0);

и проверить, улучшилось ли это.

9
ответ дан felix 15 August 2018 в 14:30
поделиться

Я использовал эту команду, чтобы исправить мою проблему с недостающими плитами:

map.getSize();

Похоже, что Leaflet должен заранее знать размер карты элементов, как сказал Михал.

1
ответ дан jordicat 15 August 2018 в 14:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: