未加星标

django admin后台提示没有static样式相关的文件

字体大小 | |
[开发(python) 所属分类 开发(python) | 发布者 店小二05 | 时间 2016 | 作者 红领巾 ] 0人收藏点击收藏

问题现象: 将

DEBUG = TEMPLATE_DEBUG = False

设置为False后,访问admin的管理后台,没有样式了。

解决办法:

vim settings.py 确保有下面的这两行

STATIC_URL = '/static/' STATIC_ROOT = '/var/searchlog/static/'

以下是nginx.conf的配置文件。我在其中添加了带有颜色的这段,我是利用的uwsgi的拉起django的。所以在这里nginx将/转到相应的端口,然后关于静态文件,我添加了一个/static,此处小弟因为路径问题,犯了点二,之前放到/root下面的目录,一直不行,然后将其放到了/var目录下面,就可以了。希望不要有兄弟犯这个二病。

[[email protected]_58_36_centos var]# egrep -v '#|^$' /etc/nginx/nginx.conf worker_processes 2; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; location /static { alias /var/searchlog/static/; } access_log /var/log/nginx_access.log; error_log /var/log/nginx_error.log; location / { uwsgi_pass 127.0.0.1:9099; include /etc/nginx/uwsgi_params; } access_log off; error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } } [[email protected]_58_36_centos var]#

下再来看下uwsgi.ini的配置文件

[[email protected]_58_36_centos searchlog]# cat uwsgi.ini [uwsgi] vhost = false plugins = python socket = 127.0.0.1:9099 master = true enable-threads = true workers = 10 wsgi-file = /var/searchlog/searchlog/wsgi.py chdir = /var/searchlog/ [[email protected]_58_36_centos searchlog]#

如果您也要使用uwsgi来拉起django的话,那么你可以直接复制我的这个配置,然后改下wsgi-file与chdir,这两个分别是wsgi.py的文件,与项目目录。这个就不再说了。还有上面使用的端口是9099,注意,我在nginx.conf的配置文件中,是转到127.0.0.1:9099的端口的,这两个需要对应起来,就是nginx会将/的访问转到uwsgi的9099的端口。

这样就可以了。

然后再命令行运行:将uwsgi跑起来

uwsgi --ini /var/searchlog/uwsgi.ini &

上面的static的文件夹,我是利用python manage.py collectstatic 来直接生成的。

步骤如下:

先在settings.py配置文件中设置一个:STATIC_ROOT = '/var/searchlog/static/'

然后再运行python manage.py collectstatic ,这样django会将相应的静态文件放到static的目录下面。

最后来看下项目的树形目录《此处省略一些static的静态文件,要不太多了》:

1 [[email protected]_58_36_centos var]# tree searchlog/ 2 searchlog/ 3 |-- db.sqlite3 4 |-- log 5 | |-- __init__.py 6 | |-- admin.py 7 | |-- migrations 8 | | |-- __init__.py 9 | |-- models.py 10 | |-- templates 11 | | |-- 404.html 12 | | |-- 500.html 13 | | |-- base.html 14 | | |-- login.html 15 | | |-- logout.html 16 | | |-- search.html 17 | | |-- showlog.html 18 | |-- tests.py 19 | |-- views.py 20 |-- manage.py 21 |-- searchlog 22 | |-- __init__.py 23 | |-- settings.py 24 | |-- urls.py 25 | |-- wsgi.py 26 |-- static 27 | `-- admin 28 | |-- css 29 | | |-- base.css 30 | | `-- ............<此处省略一些内容> 31 | |-- img 32 | | |-- changelist-bg.gif 33 | | |-- gis 34 | | | |-- move_vertex_off.png 35 | | | `-- move_vertex_on.png 36 | | |-- icon-no.gif 37 | | |-- icon-unknown.gif 38 | | `-- ............<此处省略一些内容> 39 | `-- js 40 | |-- LICENSE-JQUERY.txt 41 | |-- actions.min.js 42 | |-- admin 43 | | |-- DateTimeShortcuts.js 44 | | `-- RelatedObjectLookups.js 45 | |-- calendar.js 46 | `-- ............<此处省略一些内容> 47 `-- uwsgi.ini 48 49 [[email protected]_58_36_centos var]#

这样就可以了,总结下相应的步骤:

1.在settings.py下面

STATIC_URL = '/static/'

STATIC_ROOT = '/var/searchlog/static/'

有这两个配置

2.在nginx.conf的配置文件中添加这个配置

location /static {

alias /var/searchlog/static/;

}

这样就可以了,直接使用nginx来配置的静态文件。

本文开发(python)相关术语:python基础教程 python多线程 web开发工程师 软件开发工程师 软件开发流程

主题: TIRY
分页:12
转载请注明
本文标题:django admin后台提示没有static样式相关的文件
本站链接:http://www.codesec.net/view/484755.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 开发(python) | 评论(0) | 阅读(29)