访问没有django collectstatic的文件夹中的图像

时间:2014-12-11 12:17:24

标签: python django backend

我有一个django Web应用程序,它创建了一个调用外部python脚本的屏幕截图。

但是我担心,因为每次运行脚本时我都会./manage collectstatic查看我的应用程序的屏幕截图。不久,我可以同时进行大量的收集活动,看起来很糟糕。

如何设置一个文件夹,我可以放置屏幕,然后使用django访问它,而不必将其作为静态文件加载?

我目前的项目如下:

mysite
├── static
│   └── screenshots
|       └── *.png
└── crowlers
    ├── wrapper.py
    └── screenshot_robot.py

/opt/scripts/my_script.sh # launch wrapper.py and collectstatic

在我的./manage collectstatic的静态/屏幕截图中使用wrapper.py创建.pngs来获取它们。

根据第一回答编辑:

我终于在我的django项目的根目录下创建了一个媒体目录

settings.py

中添加以下内容
MEDIA_ROOT = os.path.join(BASE_DIR, "media")

MEDIA_URL = '/media/'

urls.py (在开发状态下使其与DEBUG = True一起使用):

from django.conf import settings
## debug stuff to serve static media
if settings.DEBUG:
    urlpatterns += patterns('',
        (r'^media/(?P<path>.*)$', 'django.views.static.serve',  {'document_root':    settings.MEDIA_ROOT}),

1 个答案:

答案 0 :(得分:2)

static文件用于项目的资产 - css,js,images等 - ,IOW是项目本身的一部分,你想保留你的git / mercurial / scc。上传/动态/生成的内容应该转到medias文件夹(settings.MEDIA_ROOT)。