![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
摸索途中的磕磕绊绊
在学习过程中遇到的各类问题
Yuppie_Disease
这个作者很懒,什么都没留下…
展开
-
视图组件详解
原创 2021-09-05 20:26:18 · 256 阅读 · 1 评论 -
多对多表关系的三种创建方式
多对多关系表的三种创建方式全自动在我们之前创建多对多表的时候,一直用的都是全自动的方式来创建第三张关系表的class Book(models.Model): title = models.CharField(max_length=32) price = models.DecimalField(max_digits=8, decimal_places=2) # 创建多对多关系字段 authors = models.ManyToManyField(to='Author')转载 2021-09-05 16:02:13 · 1679 阅读 · 0 评论 -
“detail“: “Unsupported media type \“text/plain\“ in request.“
在使用 Postman 的过程中,使用 POST 请求传输数据时,Postman 反馈如下错误 "detail": "Unsupported media type \"text/plain\" in request."这是由于在传输数据过程中格式选择错误的原因只要将右下角的 Text 格式转换为 Json 格式即可...原创 2021-09-04 23:52:04 · 2348 阅读 · 0 评论 -
Django 2.x 版本路由视图无法匹配正则
在 Django 2.x 以后的版本中,将 url 改为了 path,且 path 不匹配正则,因此需要通过导入 from django.urls import re_path 使用 re_path 来达到正则匹配的目的原创 2021-08-30 21:53:22 · 112 阅读 · 0 评论 -
关于 Ajax 与 form 表单提交冲突的问题
Ajax 与 form 表单在提交数据的过程中,若 form 表单指定了数据提交方式或使用 sumbit 按钮提交数据,则会与 Ajax 发生冲突,导致后端无法获取用户输入数据,进而无法返回正确结果解决方案1、删除 form 表单 method 参数2、将 Submit 按钮 – <input type="button" class="btn btn-success" id="btn">Submit</submit>,修改为 – <input type="button"原创 2021-08-25 11:09:06 · 728 阅读 · 0 评论 -
关于类中静态方法 @staticmethod 使用过程中的小细节
今天在写一个小模块的时候调用了 @staticmethod 方法,在模块编写完成后,运行代码发生了参数缺失的错误(TypeError: communicate() missing 1 required positional argument: ‘content’),代码如下这是由于 Email 类的 communicate 方法中并没有调用类中的属性,因此在添加 @staticmethod 装饰器后不需要传入 slef 参数,只要将 self 参数删除即可...原创 2021-08-21 18:31:12 · 250 阅读 · 0 评论 -
CBV 源码剖析
FBV 和 CBVFBV:funcation base view -- 基于函数的视图CBV:class base view -- 基于类的视图 1、先写一个类 2、继承 View 3、url(r'^login/', views.Mylogin.as_view())CBV 是根据请求方式区别访问哪个方法"""CBV - 能够直接根据请求方式不同直接匹配对应的方法执行"""CBV 源码urlpatterns = [ url(r'^admin/', admin.原创 2021-08-14 19:18:06 · 313 阅读 · 0 评论 -
WARNINGS: ?: (urls.W005) URL namespace ‘admin‘ isn‘t unique. You may not be able to reverse all URLs
在启动 Django 时发现出现如下警告这是由于在分发路由的过程中,总路由和子路由中的 url 使用了相同的名称空间在这里插入图片描述解决方法:删除子路由中的相同 url 即可原创 2021-08-14 18:34:40 · 2094 阅读 · 0 评论 -
XSS 攻击简述
XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript,但实际上也可以包括Java、 VBScript、ActiveX、 Flash 或者甚至是普通的HTML。使用 Django 也可以简单模拟次效果def xss(request): s = ''' <script> for (let i=0; i<10000000000; i++){原创 2021-08-13 17:02:20 · 286 阅读 · 0 评论 -
Django 模板语法时间显示误差问题
在使用以下方法时发现,通过此方法在页面渲染出来的时间要比北京时间推迟8个小时import datetimedef show(request): ctime = datetime.datetime.now() return render(request, 'data.html', locals())<p>{{ ctime|date:'Y-m-d H:i:s' }}</p>这是由于 Django 的 settings.py 配置文件中时区设置默认为美国时区原创 2021-08-13 16:51:30 · 315 阅读 · 0 评论 -
关于 Django 中 JsonResponse 序列化之后依旧乱码的问题
在使用 JsonResponse 进行序列化时,将 json_dumps_params 修改之后,使用 Safari 浏览器显示结果发现结果依旧为乱码def checkout(request): user_dict = {'IU': '大宝贝', 'Alex': 19} # json_dict = json.dumps(user_dict, ensure_ascii=False) return JsonResponse(user_dict, json_dumps_params={'原创 2021-08-12 21:14:46 · 319 阅读 · 0 评论 -
Django 从 MySQL 获取数据,数据无法校验成功的现象
def login(request): if request.method == 'POST': # 获取用户的用户名和密码 username = request.POST.get('username') password = request.POST.get('password') # 利用 ORM 操作, 并校验数据是否正确 user_obj = models.User.objects.filter(usernam原创 2021-08-10 11:53:28 · 176 阅读 · 0 评论 -
Requested setting INSTALLED_APPS, but settings are not
python交互环境导入模块出错django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.转载 2021-08-10 11:34:35 · 435 阅读 · 0 评论 -
cryptography is required for sha256_password or caching_sha2_password
开启Django服务时出现错误,错误信息如下:RuntimeError: cryptography is required for sha256_password or caching_sha2_password原因是缺少 cryptography 模块,安装模块即可原创 2021-08-10 11:29:36 · 121 阅读 · 0 评论 -
Django 迁移数据库可能出现的错误
1.输入:python3 manage.py makemigrations出现的错误:ModuleNotFoundError: No module named 'MySQLdb'解决方案:要导入pymysql模块那么具体在哪里导入呢?如下图: 在Diango_ORM_Muti文件下的 __init__.py文件里 写下面代码: import pymysql pymysql.install_as_MySQLdb()2.重新输入:python3 manage.py mak转载 2021-08-09 22:18:15 · 900 阅读 · 0 评论 -
Duplicated jQuery selector
// 设置值$(':text').val('ly')// 获取值console.log($(':text').val())在使用 jQuery 书写这两行代码是,Pycharm 会给出 Duplicated jQuery selector 的警告提示,这是由于上面代码中两处使用了同一个id选择器,JQuery建议你使用一个变量去存储这个选择器,而不是每次用的时候便拿来调用一下因此只需要为 id 选择器定义一个变量即可解决此问题// 设置值let id = ':text'$(id).val原创 2021-08-07 16:50:36 · 227 阅读 · 0 评论 -
SQL注入
什么是 SQL 注入?- 利用 SQL 中的一些特殊语法,绕过了 SQL 语句import pymysqlconn = pymysql.connect( host='127.0.0.1', port=3306, user='root', password='xxxxx', database='练习题', charset='utf8', autocommit=True,)cursor = conn.cursor(cursor=pymysql.cursors.DictC原创 2021-07-30 19:55:42 · 76 阅读 · 0 评论 -
关于 Navicat 使用过程中字段查找不存在的问题
如上图所示,报错提示 ‘在列表中存在未知列’,这是因为 AVG 为 MySQL 的内置函数,因此 Navicat 由于无法正确识别这是函数还是字段名而报错。解决方案:将 AVG(num) 使用 AS 重命名即可,如下...原创 2021-07-29 16:32:48 · 1588 阅读 · 0 评论 -
Mac 系统下 MySQL 环境变量的配置
1.打开终端,输入:sudo vim ~/.bash_profile(执行root权限,当前用户的根目录下的.bash_profile)2.然后在里面输入:export PATH=$PATH:/usr/local/mysql/bin3.按ESC,然后输入::wq4.source ~/.bash_profile(重新加载)5.通过which命令验证:which mysql 输出:/usr/local/mysql/bin/mysql 则配置成功但是,此方法在 MacOS Catalina 以原创 2021-07-26 14:04:41 · 266 阅读 · 0 评论 -
AttributeError: partially initialized module ‘lib.common‘ has no attribute ‘login_decorator‘ (most l
在编写登录装饰器时,出现了循环导入的错误。这是由于在定义装饰前倒入了 admin, teacher, student 模块,而装饰器的调用则是在 admin, teacher, student 模块中,因此报错。解决方法:将模块导入插入至装饰器内部即可...原创 2021-07-24 17:22:56 · 360 阅读 · 0 评论 -
Expected type ‘Optional[bool]‘ (matched generic type ‘_VT‘), got ‘str‘ instead
问题:Expected type ‘Optional[bool]’ (matched generic type ‘_VT’), got ‘str’ instead如图所示,在调用管理员登录接口的过程中,判断用户未登录,修改登录状态时,account变量飘黄。这是由于 admin_login 中 ‘account’ 的数据类型为 bool 类型,而 account 为 str 类型,两者数据类型不同而提示。只需将 admin_login 中 ‘account’ 的 None 修改为空字符串即可解决,即.原创 2021-07-24 17:05:46 · 2715 阅读 · 0 评论 -
2021.07.15_关于类中各个方法的属性可以互相调用的问题
在函数体中,除非引用全局变量,否则各个函数内的变量是相互独立的名称空间,不能相互穿插调用class Date: def __init__(self, year, month, day): self.year = year self.month = month self.day = day def tell_birth(self): print('%s-%s-%s' % (self.year, self.month, self原创 2021-07-15 21:22:50 · 252 阅读 · 0 评论 -
2021-06-27 关于导入文本的字符串类型字典的取值问题
今天在编写注册功能函数时发现,注册成功的用户可以将数据以字典的形式轻松保存至文档,但却无法在 for 循环遍历之后通过 key 取值:def register(): """注册函数""" user_id = input("请设置您的账号>>>: ") with open('user_data.txt', 'rt', encoding='utf-8') as f: data = f.read() for j in data:原创 2021-07-06 21:40:12 · 124 阅读 · 0 评论