Django1.7如何配置静态资源访问

时间:2022-12-14 11:23:25

Django是非常轻量级的Web框架,今天散仙来看下如何在Django中配置静态的资源访问路径,一个中等规模的网站,可能就会有很多静态的资源需要访问,无论是html,txt,还是压缩包,有时候访问这些资源我们并不需要过多的限制,所以任由用户访问,这时我们就没必要在加一个request请求,转发或重定向访问,我们可以直接使用Django的静态资源访问策略。

默认在django里是不支持静态资源访问的,我们需要稍微配置映射才可以。

(1)确认你的INSTALLED_APPS里面有'django.contrib.staticfiles'静态资源配置。

INSTALLED_APPS = (	'django.contrib.admin',	'django.contrib.auth',	'django.contrib.contenttypes',	'django.contrib.sessions',	'django.contrib.messages',	'django.contrib.staticfiles',	'stapp',#app1	'twapp',#app2)

(2)在url里面,加上静态文件映射:

from django.conf import settingsfrom django.conf.urls.static import staticurlpatterns = patterns('',	# Examples:	# url(r'^$', 'ManagerSystem.views.home', name='home'),	# url(r'^blog/', include('blog.urls')),	#admin界面的映射	url(r'^admin/', include(admin.site.urls)),	#hello world的映射	url(r'^hello/$',hello), #twapp的映射	url(r'^tt/$',tt),	#配置静态资源映射)+static(settings.STATIC_URL)

注意上面的最后一句话是重点

3,在对应的app下,新建一个static的文件夹,如果不想叫static这个文件夹名,可以对应在setting.py里面修改下面的参数即可

STATIC_URL = '/static/'

4,然后在static目录下,放一些静态文件,即可访问,测试如下,

Django1.7如何配置静态资源访问Django1.7如何配置静态资源访问

5,至此,已经大功告成,当然如果你想下载文件的话,需要上传压缩包的形式才可以直接通过浏览器下载。

最后需要注意的是,关于Django的项目设置,我们都知道一个django项目可以可以由多个app组成,当然,一个app也可以被多个django项目共享,默认的情况下所有的模板文件盒静态文件是所有的app共享的,但是有时候我们为了,更加清晰的区分那个资源,属于哪个项目的,应该怎么做,其实这个问题很简单,我们只需要通过约定来完成这件事情就可以,在模板文件下建多个文件夹,每一个项目单独使用即可,对于静态文件也一样,我们不能给每个app定义一个不用的文件夹,因为他们的父目录必须是跟配置文件里的一样,所以我们可以在static/目录下,再新建多个文件夹区分即可。