Может ли Django dev сервер правильно обслуживать SVG?

Я пытаюсь использовать svg-карту, используя:

<object data="map.svg" type="image/svg+xml" width="400" height="300"> <embed src="map.svg" type="image/svg+xml" width="400" height="300" /> </object> 

В Firefox это приводит к приглашению плагина. Если я переименую карту. svg для отображения. xml показывает изображение правильно. Я предполагаю, что это связано с тем, что dev-сервер Django (в частности django.views.static.serve ) не обслуживает svg с правильным типом mime. Это проблема, и если да, есть ли патч?

2 Solutions collect form web for “Может ли Django dev сервер правильно обслуживать SVG?”

У меня нет Django для тестирования на данный момент, но похоже, что статический сервер использует библиотеку mimetypes для определения типа контента (в частности, guess_type ()).

С чуть-чуть Googling я натолкнулся на какой-то код, который вы, вероятно, могли бы добавить в свои settings.py, чтобы добавить поддержку типа содержимого svg:

 import mimetypes mimetypes.add_type("image/svg+xml", ".svg", True) mimetypes.add_type("image/svg+xml", ".svgz", True) 

Есть также этот пост в блоге, специфичный для Pylons, но он упоминает подобную проблему. Он указывает, что типы MIME хранятся в «/etc/mime.types» и что SVG отсутствует, поскольку он не является официальным типом MIME. Он может быть прав, поскольку я не могу найти MIME-тип для SVG в любом месте IANA .

Если вы обслуживаете SVG динамически из обычного представления django, вы можете указать тип mimetype в объекте HTTPResponse, который вы возвращаете из этого представления. В этом случае вам понадобится mimetype для использования как dev, так и производства:

 def myview(request): svg_data = generate_some_svg_data() return HttpResponse(svg_data, mimetype="image/svg+xml") 
  • Упростить SVG с помощью преобразования - уменьшить размер
  • преобразование латексного кода в mathml или svg-код в python
  • Как определить, находится ли многоугольник внутри другого?
  • Преобразование пути в многоугольник
  • интерактивный _standalone_ вывод от matplotlib
  • Как использовать SVG DOM в Python
  • Рисование SVG на холсте Киви
  • преобразование из svg в pdf
  •  
    Interesting Posts for Van-Lav
    Python - лучший язык программирования в мире.