“最近一段时间在学习Django框架,通过本文对Django 框架加载静态文件进行总结:
(1) 安装python和pip,这里就不再赘述
(2) 通过pip 安装命令安装Django,命令为 pip install Django
(3) 进入命令行,进入你打算创建项目的位置,我项目安装位置是"D:/python/django",执行命令"django-admin startproject HelloWorld",创建一个HelloWorld项目在当前目录之下,你可以在当前目录下查看到HelloWorld文件夹,如果没有找到该文件夹,可能是你对这个目录的读写权限不够。
(4)进入第一个HelloWorld目录之下执行python manage.py runserver 0.0.0.0:8000,在命令界面没有报错的情况下,在浏览器输入127.0.0.1:8000,浏览器会弹出Django的界面,弹出这个界面则表示项目创建成功。
(5)我们在第一个HelloWorld目录之下创建一个templates文件夹用于存放前端的HTML文件,同样在该目录下创建一个static文件夹,用于存放前端调用的静态文件;然后在templates目录之下创建一个index.html文件,在static目录之下创建一个images目录,然后在该image目录之下存放了一张desk.png的图片,用户前端调用。
(6)在第二个HelloWorld目录之下创建一个view.py的文件,相应录入的代码如下:
from django.shortcuts import render
def hello(request):
content={}
str_name="desk.png"
content['img_dir_args']='''/static/images/'''+str_name
print("content:",content['img_dir_args'])
return render(request,"index.html",content)
(7)修改第二个HelloWorld目录之下的的url.py文件,相应代码如下:
from django.conf.urls import url
from .import view
urlpatterns = [
url(r'^index$',view.hello)
]
(8)修改第二HelloWorld个目录下的settings.py,修改的相应代码如下:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [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',
],
},
},
]
上面加粗部分代码是修改的
STATIC_URL = '/static/'
STATICFILES_DIRS =[
os.path.join(BASE_DIR, "static"),
'/var/www/static/',
]
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
)
(9)在修改templates目录下的index.html文件相应代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>(runoob.com)</title>
</head>
<body>
{% load static %}
<p>
<img src="{{img_dir_args}}" alt="">
</P>
</body>
</html>
(10) 至此通过Django 加载静态图片的项目已经完成,可以通过命令行运行项目"python manage.py runserver 0.0.0.0:8000"
而用户在浏览器输入"127.0.0.1:8000/index",即可查看网页加载的图片如下: