Я новичок в Django серверных приложениях, и я пытался протестировать отображение нескольких медиа-файлов в Django приложении.
почти во всех медиа-файлах, таких как изображения, GIF-файлы и видео может отображаться нормально без каких-либо проблем с использованием локального хоста.
однако при доступе к веб-сайту с помощью компьютера publi c изображения отображались, но я не мог отобразить видео - и на моем компьютере отображается ошибка атрибута терминал, который я копирую ниже:
AttributeError: 'NoneType' object has no attribute 'split'
В заключение Невозможно получить доступ к URL-адресу видео через общедоступный c IP, я могу отобразить его без каких-либо проблем локально или с любого компьютера, подключенного к тому же маршрутизатору. Только изображения и GIF-файлы могут быть доступны без каких-либо проблем при использовании publi c и локальных IP-адресов
. Вот коды, которые я использовал для отображения тестового видео:
. html file
{% extends "blog/base.html" %}
{% load static %}
{% block content %}
<video oncontextmenu="return false;" width='320' height= '240' autoplay controls controlsList="nodownload">
<source src="{% static 'videos/test.mp4' type='video/mp4' %}">
Your browser does not support the video tag.
</video>
{% endblock content %}
settings.py stati c root определено
STATIC_URL = '/static/'
MEDIA_ROOT=os.path.join(BASE_DIR, 'media')
MEDIA_URL='/media/
url.py Шаблоны URL были скорректированы
if settings.DEBUG:
# urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
, и в views.py я просто отображаю. html после определения аргумента запроса и т. д.
Я надеюсь, что смогу получить идея , почему я не могу отображать видео с компьютера publi c - и они могут отображаться только на локальном компьютере; это не может быть проблемой с разрешениями, так как другие публичные файлы, такие как img или gif, могут отображаться с компьютеров publi c - я также не понимаю ошибку атрибута, отображаемую в терминале