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搜索

上传文件,分页等其他还没有说到的,打算在项目中更新,没有例子。很难受。

后期更新可能慢点。有什么意见和建议,都可以在后台回复我。