在BeaverDam中使用djnago打开静态文件时出现问题

时间:2018-12-28 20:27:43

标签: django

我正在尝试使用视频注释工具BeaverDam离线注释静态视频。 https://github.com/antingshen/BeaverDam

我在目录'/ home / arl / BeaverDam / annotator / static / videos'中有一个视频文件0.mp4

然后我将STATICFILES_DIRS包含在安装文件中: https://github.com/antingshen/BeaverDam/blob/master/beaverdam/settings.py

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "annotator/static/")
STATICFILES_DIRS = ("/home/arl/BeaverDam/annotator/static/videos", )

我无法查看URL中的静态文件夹。尝试过类似的选项 本地主机:5000 / annotator / static / 本地主机:5000 / annotator / static / videos

任何帮助将不胜感激

# #

1)在设置文件(https://github.com/antingshen/BeaverDam/blob/master/beaverdam/settings.py)中,“ DEBUG”设置为false

# Use different key for production
SECRET_KEY = '8pje5%pxibt2c=&j_c+ly5v@x)$r77%h-x3%jluq-@)4^75)ak'
DEBUG = False

2)在设置文件(https://github.com/antingshen/BeaverDam/blob/master/beaverdam/settings.py)中,我包括了STATICFILES_DIRS。这就是我现在设置的方式:

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.9/howto/static-files/

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "annotator/static/")
STATICFILES_DIRS = ['/home/arl/BeaverDam/annotator/static/videos', ]

3)修改了video.html(https://github.com/antingshen/BeaverDam/blob/master/annotator/templates/video.html)以包括静态文件夹

{% extends "base.html" %}

{% load static %}
{% block content %}
{% static '0.mp4' %} 
{% endblock content %}

{% block head %}
<link rel="stylesheet" type="text/css" href="/static/app.css"/>
….

4)python3 manage.py collectstatic给了我: 1个静态文件复制到'/ home / arl / BeaverDam / annotator / static',90个未修改。

5)http://localhost:5000/static/annotator/0.mp4 给我“在此服务器上找不到请求的URL /static/annotator/0.mp4。”

1 个答案:

答案 0 :(得分:1)

STATICFILES_DIRS是django在其中查找静态文件的路径。 STATIC_ROOT是为其提供服务的地方。实际上,您实际上需要使用简单的命令收集静态信息以供使用:

python3 manage.py collectstatic

但是请记住,您必须具有读取此文件的权限。