DJango1.10 中html,css,js等静态文件的目录设置

如果像https://my.oschina.net/aslanjia/blog/833733里面一样,添加了staitc路径的话,直接把js,css文件放到设置的static目录下即可。

在使用的时候,路径要写从static开始的相对路径:

 <link rel="stylesheet" href="/static/css/modify_blog.css">

 

如果:

没有设置过上面的步骤。

项目结构如下:

100432_fiU0_2290420.png

static目录存放:css js  images等文件

templates目录存放的是html文件.

 

其实要给项目配置这些目录是很简单的,只需要在settinigs.py里面添加下面的配置即可。

(并不需要再urls.py里配置相关的东西,Django就会自动找到对的路径解析静态文件了)


#配置 templates 目录
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

#配置 staitc 目录
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATICFILES_DIRS = (
    ("css", os.path.join(STATIC_ROOT,'css')),
    ("js", os.path.join(STATIC_ROOT,'js')),
    ("images", os.path.join(STATIC_ROOT,'images')),
)

 

 

 

快到尾声的时候,讲讲正式部署环境怎么设置吧:
DEBUG=False
首先把DEBUG设置为False,告诉Django环境是正式的非调试模式下了,然后Django就不再通过自己来处理静态页面了,最后静态文件都交给Nginx Apache来处理了。

说说Nginx怎么配置,才能正确解析静态文件吧,在一个server里添加一个location静态文件处理

location  /static/ {
        root  /home/www-data/twogoo/myproject/;

    }

这个也有一个容易犯错的地方,就是路径,有的同学常常指定这样的路径:/home/www-data/twogoo/myproject/staitc/;这样Nginx应该找不到静态文件的,因为Nginx会跑到/home/www-data/twogoo/myproject/staitc/staitc/路径里找,注意这点,静态文件处理上你会顺很多。

转载于:https://my.oschina.net/aslanjia/blog/835242

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值