随笔分类 - Python全栈开发新版 / 【5.0】Django框架
发表于 2024-04-07 18:30阅读:115评论:0推荐:0
摘要:【一】什么是RBAC 【1】概念 RBAC 是基于角色的访问控制(Role-Based Access Control ) 在 RBAC 中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。 这就极大地简化了权限的管理。 这样管理都是层级相互依赖的,权限赋予给角色,而把角色又赋予用户
阅读全文 »
发表于 2024-04-07 18:30阅读:292评论:0推荐:0
摘要:【一】前言 【1】引言 Django的默认配置文件中,包含上百条配置项目 其中很多是我们‘一辈子’都不碰到或者不需要单独配置的 这些项目在需要的时候再去查手册。 【2】强调 配置的默认值不是在settings.py文件中! 不要以为settings.py中的配置值就是默认值,参考前文。 settin
阅读全文 »
发表于 2024-04-07 18:30阅读:318评论:0推荐:0
摘要:【一】引言 Django项目的设置文件位于项目同名目录下,名叫settings.py。 这个模块,集合了整个项目方方面面的设置属性,是项目启动和提供服务的根本保证。 【二】简述 settings.py文件本质上是一个Python模块,带有模块级别的变量。 下面是一些示例设置: ALLOWED_HOS
阅读全文 »
发表于 2024-04-07 18:29阅读:62评论:0推荐:0
摘要:【一】Django配置文件介绍 Django框架默认提供给我们一个配置文件 在我们项目根目录下的 setting.py 文件中,在里面我们可以看到很多的配置项 并且我们能够自主的添加相应的配置 但是其实这个文件只是Django暴露出来给我们的一个接口文件,在Django内部还存在一个更加强大的配置文
阅读全文 »
发表于 2024-04-07 18:29阅读:30评论:0推荐:0
摘要:【一】Auth模块引入 我们在创建一个Django项目之后,直接执行数据库迁移命令会自动生成很多表 django_session auth_user Django在启动之后就可以直接访问admin路由,需要输入用户名和密码,数据参考的就是auth_user表,并且必须是管理员用户才能进入 【二】创建
阅读全文 »
发表于 2024-04-07 18:29阅读:71评论:0推荐:0
摘要:【一】跨站请求伪造介绍 【1】引入 CSRF(Cross-Site Request Forgery)跨站请求伪造是一种常见的网络攻击方式。 攻击者通过诱导受害者访问恶意网站或点击恶意链接 将恶意请求发送到目标网站上 利用受害者在目标网站中已登录的身份来执行某些操作 从而达到攻击的目的。 【2】举例
阅读全文 »
发表于 2024-04-07 18:28阅读:108评论:0推荐:0
摘要:【一】Django中间件介绍 【1】什么是Django中间件 Django中间件是一个轻量级、可重用的组件,用于处理Django请求和响应的过程。 它提供了对请求和响应进行全局处理的机制,可以在请求达到视图之前进行预处理或在响应返回给客户端之前进行后处理。 中间件是按照顺序依次执行的,每个中间件都可
阅读全文 »
发表于 2024-04-07 18:28阅读:18评论:0推荐:0
摘要:【一】引言 给类视图函数添加装饰器需要借助第三方模块 from django.utils.decorators import method_decorator 【二】三种添加装饰器方式 【1】给类方法加装饰器 指名道姓的装 -- 放在方法上面 (1)路由 path('login_view/', vi
阅读全文 »
发表于 2024-04-07 18:28阅读:51评论:0推荐:0
摘要:【一】前言引入 【1】HTTP特性之无状态 因为因特网HTTP协议的特性,每一次来自于用户浏览器的请求(request)都是无状态的、独立的。 通俗地说,就是无法保存用户状态,后台服务器根本就不知道当前请求和以前及以后请求是否来自同一用户。 对于静态网站,这可能不是个问题,而对于动态网站,尤其是京东
阅读全文 »
发表于 2024-04-07 18:27阅读:56评论:0推荐:0
摘要:【一】Cookie与Session的发展史 Cookie和Session是用来在Web应用程序中跟踪用户会话数据的两种常用技术。 【1】Cookie的发展史 1994年,网景通信公司推出了第一个浏览器Cookie技术。 Cookie是存储在用户计算机上的小型文本文件,用于跟踪用户在网站上的活动。 初
阅读全文 »
发表于 2024-03-18 23:21阅读:43评论:0推荐:0
摘要:【一】引入 声明:以下的Form、表单等术语都指的的广义的Django表单。 Form要么是绑定了数据的,要么是未绑定数据的。 如果是绑定的,那么它能够验证数据,并渲染表单及其数据,然后生成HTML表单。如果未绑定,则无法进行验证(因为没有数据可以验证!),但它仍然可以以HTML形式呈现空白表单。
阅读全文 »
发表于 2024-03-18 23:20阅读:246评论:0推荐:0
摘要:【一】引入 如果你正在构建一个数据库驱动的应用,那么你可能会有与Django的模型紧密映射的表单。 比如,你有个BlogComment模型,并且你还想创建一个表单让大家提交评论到这个模型中。 在这种情况下,写一个forms.Form类,然后在表单类中定义字段,这种一般创建表单的做法是冗余的,因为你已
阅读全文 »
发表于 2024-03-18 23:20阅读:16评论:0推荐:0
摘要:【一】切入点 切入点form_obj.is_valid() def is_valid(self): """Return True if the form has no errors, or False otherwise.""" return self.is_bound and not self.e
阅读全文 »
发表于 2024-03-18 23:20阅读:117评论:0推荐:0
摘要:【一】什么是钩子函数 在forms组件中 钩子函数(Hooks)是用来在特定事件发生时执行自定义逻辑的函数。 它们提供了一种创建交互性和动态行为的方式,并可以用于处理表单的各种状态和数据。 【二】常见的钩子函数 【1】onInputChange 当输入框的值发生变化时触发。 你可以通过这个钩子函数获
阅读全文 »
发表于 2024-03-18 23:19阅读:47评论:0推荐:0
摘要:【一】定义form组件 forms.py # 定义form类 class MyForm(forms.Form): # username : 字符串类型 最小三位,最大八位 username = forms.CharField(max_length=8, min_length=3, label="用户
阅读全文 »
发表于 2024-03-18 23:19阅读:107评论:0推荐:0
摘要:【一】引入 forms组件只会帮我们渲染用户输入的标签(input/select...) 【二】书写forms组件 forms.py from django import forms # 定义form类 class MyForm(forms.Form): # username : 字符串类型 最小三
阅读全文 »
发表于 2024-03-18 23:18阅读:159评论:0推荐:0
摘要:【零】引入 创建Form类时主要涉及到 【字段】 和 【插件】 字段用于对用户请求数据的验证 插件用于自动生成HTML; 【一】Field.clean(value) 注意:这里说的是字段Field的clearn方法,不是表单Form的clean方法。 虽然表单字段的Field类主要使用在Form类中
阅读全文 »
发表于 2024-03-18 23:18阅读:68评论:0推荐:0
摘要:【一】Django的表单系统 【1】使用表单 (1)原始表单 我们之前在HTML页面中利用form表单向后端提交数据时 都会写一些获取用户输入的标签并且用form标签把它们包起来。 与此同时我们在好多场景下都需要对用户的输入做校验 比如校验用户是否输入 输入的长度和格式等正不正确。 如果用户输入的内
阅读全文 »
发表于 2024-03-18 23:10阅读:13评论:0推荐:0
摘要:【一】引入 针对上一小节批量插入的数据 我们在前端展示的时候发现一个很严重的问题 一页展示了所有的数据,数据量太大,查看不方便 针对数据量大但又需要全部展示给用户观看的情况下 我们统一做法都是做分页处理 【二】分页推导 【1】理论 首先我们需要明确的时候 get请求也是可以携带参数的 所以我们在朝后
阅读全文 »
发表于 2024-03-18 23:09阅读:167评论:0推荐:0
摘要:【一】引入 项目需求: 浏览器中访问django后端某一条 url(如:127.0.0.1:8080/index/) 实时朝数据库中生成一千条数据并将生成的数据查询出来 并展示到前端页面 【二】创建模型表 class Book(models.Model): title = models.CharFi
阅读全文 »