Django篇(四)
- 2019 年 10 月 6 日
- 筆記
1.1首先什么是静态文件?
我们把css,js,images这些都称之为静态文件。
1.2静态文件的使用
我们需要首先创建一个static的文件夹,这个文件夹是和我们的应用并列的。
再在static文件夹下创建css,js,images文件夹。
1.3进行配置
在我们的settings.py中进行配置添加两个配置:
# 设置访问静态文件对应的url,一般写成static,当然也可以写成其他的
# 并且他和我们刚刚创建的静态文件夹static是无关的。
STATIC_URL = '/static/'
# 设置静态文件所在的物理目录
# 这个设置已经给与静态文件的目录,所以上面的STATIC_URL与我们自己创建的
# static文件夹无关
STATICFILES_DIRS = [os.path.join(BASE_DIR,'static')]
1.4、静态文件的加载顺序
首先先去我们自己配置的路径STATICFILES_DIRS,下去找图片,如果找不到,他回去我们应用下的static去找。(我们应用下都没有创建static)
1.5、实例
我们在模板的需要显示一张图片
<img scr='/static/images/xxx.png'>
这个以static开头,是和我们设置的STATIC_URL有关的,他是什么我们静态文件开头就些什么,和我们关键的static文件夹无关。
1.6、动态加载图片
什么是动态加载图片,上次我们说了一个动态加载url,这里也是一样的,我们不把图片的路径写死。
在模板页需要写成这样:
# 首先需要加载配置
{% load staticfile %}
# 动态加载图片
<img src="{% static 'images/xxx.png' %}">
中间件
什么是中间件?
Django框架中为我们预留的函数接口,处于执行view函数前,也就是说,浏览器发送一个请求,以前都是直接请求view中的一个方法,现在中间多了一个方法,来干预请求和应答。
首先:我们需要在应用下创建一个middleware.py文件。
我们在里面创建一个类:
class TestMiddleware(object)。
里面的类我们一般以Middleware结尾,然后我们要为这个类在settings.py文件进行注册,找到MIDDLEWARE_CLASSES选项,添加'应用名.middleware.TestMiddleware',进行注册。接下来就需要在里面定义函数了。
Django为我们预留的函数:
__init__:在服务器第一个请求就调用
process_request:在url进去匹配前调用
process_view:在视图函数调用前调用
process_response:视图函数调用后,返回给服务器前
process_exception:视图函数出现异常会调用这个函数
了解完Django为我们预留的函数,我们就可以去使用他了。
这些参数和函数名都是固定的。
Admin后台管理
1、时间,语言本地化
settings.py中:LANGUAGE_CODE = 'zh-hans'
TIME_ZONE='Asis/Shanghai'
2、创建超级管理员
3、注册模型类
4、自定义模型类属性:
class 名称(admin.ModelAdmin):
# 如果数据过多
# 每页显示10条数据
list_par_page = 10
# 每行显示多个title
list_display = ['id','xxx','xxxxx']
# 添加过滤栏
list_filter = ['id']# 以id为过滤栏
# 添加搜索框
search_fields = ['id'] # 根据id搜索
上传文件,分页等其他还没有说到的,打算在项目中更新,没有例子。很难受。
后期更新可能慢点。有什么意见和建议,都可以在后台回复我。