走进Django的起始之旅

2周前发布 gsjqwyl
13 0 0

文章标题:

初探Django的世界

文章内容:

Django的基本概况:

Django5相关讲解:Django的发音为[`dʒæŋɡəʊ],不过也有小伙伴会读出“酱狗”“贱狗”等不同读音。

官方网址是:https://www.djangoproject.com/ Django。它是一款高级的Python Web框架,能够高效地搭建出安全且易于维护的网站。由经验丰富的开发者构建而成,Django会处理网站开发中复杂的部分,让开发者可以专注于应用程序的编写,无需重复进行基础开发。它是免费且开源的,拥有活跃的社区、丰富的文档,还有众多可供选择的免费及付费解决方案。

通过pip进行安装时,可以指定下载的版本,例如:

pip install Django==5.0.1

创建Django项目:

  1. 通过cmd命令行来创建:
    走进Django的起始之旅

    ">此处保留原图片链接

第二种方式是在pycharm中创建:
走进Django的起始之旅

">此处保留原图片链接

通过命令行创建的项目初始没有templates文件夹,该文件夹可用于存放要渲染的HTML文件。
走进Django的起始之旅

">此处保留原图片链接

Django5应用的创建:

之前创建的是一个项目,一个项目由一个或多个应用组成(一般开发时一个项目里创建一个应用就行)。项目里的每个应用都是独立的,能够拥有独立的数据库、模板代码和业务代码。
走进Django的起始之旅

">此处保留原图片链接

可以通过下面的命令创建一个应用:

python manage.py startapp  app1

说明框中的目录创建时初始不存在,这是后续中间件和静态文件的存放目录。
走进Django的起始之旅

">此处保留原图片链接

编写简单的入门helloworld程序:

在app1应用下的view.py中编写简单代码,这里写了两种,一种是通过模板引擎返回HTML。
走进Django的起始之旅

">此处保留原图片链接

要先在项目中配置刚创建的app1应用,否则无法访问。
走进Django的起始之旅

">此处保留原图片链接

在项目的urls.py中配置视图函数,这类似springboot中的controller,urls.py的配置类似@GetMapping的映射。
走进Django的起始之旅

">此处保留原图片链接

这里可以配置运行启动的端口,默认是8000。
走进Django的起始之旅

">此处保留原图片链接

前面提到通过cmd命令创建的项目没有templates目录,需要自己创建配置,通过pycharm创建的项目可忽略这一步。
走进Django的起始之旅

">此处保留原图片链接

下面是静态文件的配置,用于存放图片等资源。
走进Django的起始之旅

">此处保留原图片链接

名字可以自行设定,这样配置的static目录在app1应用下,并非与templates同级。通过http://127.0.0.1:8000/static/b.jpg就能进行访问。

中间件的配置:

django自带的中间件有:
– SecurityMiddleware:内置的安全机制,保障用户与网站通信的安全。
– SessionMiddleware:实现会话Session功能。
– LocaleMiddleware:提供国际化和本地化功能。
– CommonMiddleware:处理请求信息,规范请求内容。
– CsrfViewMiddleware:开启CSRF防护功能。
– AuthenticationMiddleware:启用内置的用户认证系统。
– MessageMiddleware:开启内置的信息提示功能。
– XFrameOptionsMiddleware:防止恶意程序进行单击劫持。

我们也可以自定义中间件:
中间件可以定义五个方法,主要的是process_request和process_response,在自定义中间件时,必须继承MiddlewareMixin。process_request(self,request)会在请求views方法之前执行。process_view(self, request, callback, callback_args, callback_kwargs) Django会在调用视图函数之前调用此方法。process_template_response(self,request,response)该方法对视图函数返回值有要求,必须是含有render方法类的对象才会执行此方法,process_exception(self, request, exception)这个方法只有在视图函数出现异常时才执行,process_response(self, request, response)在请求执行完成、返回页面前会执行。
走进Django的起始之旅

">此处保留原图片链接

最后在settings.py中配置这个自定义的中间件。
走进Django的起始之旅

">此处保留原图片链接

最后访问http://127.0.0.1:8000/test/就可以看到控制台中的情况。
走进Django的起始之旅

">此处保留原图片链接

好了,今日的内容就分享到这里,祝愿各位万事顺遂。

© 版权声明

相关文章

暂无评论

暂无评论...