Django学习
Arrowarcher
p..py交易了解一下
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
从0开始用docker部署django-blog项目
从0开始用docker自建镜像,并部署django-blog项目原创 2022-06-25 09:12:24 · 844 阅读 · 0 评论 -
django 各中间件作用
django.middleware.security.SecurityMiddleware一些安全设置,比如XSS脚本过滤、ssl重定向django.contrib.sessions.middleware.SessionMiddlewaresession支持中间件,加入这个中间件,会在数据库中生成一个django_session的表。django.middleware.common.CommonMiddleware通用中间件,会处理一些URL,比如baidu.com会自动的处理成www.baidu转载 2020-10-10 11:35:44 · 1515 阅读 · 0 评论 -
django-rest-framework限制API访问频率
django-rest-framework 为我们提供了 2 个常用的限流功能辅助类,分别是 AnonRateThrottle 和 UserRateThrottle。AnonRateThrottle 用于限制未认证用户的访问频率,限制依据是用户的 ip。UserRateThrottle 用于限定认证用户,两种可以同时使用REST_FRAMEWORK = { 'DEFAULT_THROTTLE_CLASSES': [ 'rest_framework.throttling.AnonRa原创 2020-09-27 09:12:24 · 565 阅读 · 0 评论 -
djangorestframewok版本控制
配置版本控制方案# 全局REST_FRAMEWORK = { 'DEFAULT_VERSIONING_CLASS': 'rest_framework.versioning.NamespaceVersioning'}# 视图集class ProfileList(APIView): versioning_class = versioning.QueryParameterVersioningNamespace版本控制# urls.pyurlpatterns = [ re_原创 2020-09-27 09:09:18 · 112 阅读 · 0 评论 -
django 使用InMemoryUploadedFile让本地图片保存到model的文件字段
构建InMemoryUploadedFileclass InMemoryUploadedFile(UploadedFile): """ A file uploaded into memory (i.e. stream-to-memory). """ def __init__(self, file, field_name, name, content_type, size, charset, content_type_extra=None): super().原创 2020-09-14 15:56:57 · 5118 阅读 · 3 评论 -
django接口添加缓存:drf-extensions 深入学习
ImportError: cannot import name 'EmptyResultSet' from 'django.db.models.sql.datastructures'最新版本的drf-extensions不兼容8.4发布的django3原因django.core.exceptions.EmptyResultSet的兼容性导入被删除:from django.db.models.sql.datastructures import EmptyResultSet以上位置不再能导入Empty.原创 2020-09-11 17:57:10 · 842 阅读 · 0 评论 -
django signal的使用
django的信号,可以追踪用户对model的操作是django自带的包:django.db.models.signalssignal的监控可以是很多类型,比较常用的是post_save现在用简单的model,来看看效果# modelclass UploadFile(models.Model): file = models.FileField(upload_to='file', ...原创 2019-07-18 14:24:31 · 355 阅读 · 0 评论 -
Serializers进阶之自由自在的序列化
话不多说,代码直接来:首先设一个购物车的model:# models.pyclass ShoppingCart(models.Model): """ 购物车 """ user = models.ForeignKey(User, verbose_name=u"用户", on_delete=models.CASCADE) goods = models.Fo...原创 2019-06-10 09:59:02 · 577 阅读 · 0 评论 -
django_channels的scope之user的获取流程
关于channels的self.scope消费者在初始化时接收到连接的scope,其中包含了在 Django 视图中可以找到的关于request对象的许多信息。 它以消费者方法内部的 self.scope 来使用。今天在做consumer学习的时候发现:当我在登录视图函数使用login(request,request.user)之后,channels的consumer的scope中才能获...原创 2019-05-07 18:41:38 · 2375 阅读 · 0 评论 -
django加载上传图片的坑:STATIC_ROOT与STATICFILES_DIRS的区别
今天在测试直接访问上传的图片时一直是404按照网上的资料也不能正常解决。最后终于知道了问题所在:分2种情况:Debug = True时,django会自动去每个app下寻找静态文件,但是默认是不包含myproject/static目录里的静态文件的,而我的图片正好保存在这里!!!网上看到的大多是设置 :STATIC_ROOT = os.path.join(BASE_DIR, ‘st...原创 2019-04-23 14:11:18 · 1372 阅读 · 0 评论 -
django model的update时auto_now不被更新的原因
我们都知道设计model给字段添加auto_now=True之后,修改数据会自动更新修改时间,原来这还是要看情况的对于单个这样model实例修改:obj = User.objects.get(id=1)obj.name='xxx'obj.save()save()时确实会自动更新当前时间这是因为这个操作它经过了model层如果用django filter的update(通常为批量...原创 2019-03-18 10:56:14 · 2538 阅读 · 0 评论 -
django session cookie的自登录机制
简介首先实现这个机制的前提是有状态请求,就是用户请求后,服务器会返回一个sessionid(key)给用户,下次用户请求就会带着这个id,让服务器来获取自己的用户信息。而实现这个机制的就是靠中间件django.contrib.session了,它会在服务器与用户交互时带上第一次交互生存的session_data。自登陆机制# views.pyclass LoginView(View):...原创 2019-01-28 15:14:58 · 625 阅读 · 0 评论 -
我的Django-blog学习(二):使用虚机模拟搭建内网博客
使用虚机模拟搭建内网博客最近在学习追梦人生写Django博客教程.,其中做到搭建服务器和域名时,由于都没有这些,只能使用贫困法玩玩啦。##第一步:配置虚机。如教程所说,我用了Ubuntu的镜像,创建了新用户,更新了系统,安装了python、nginx等liuxuan@jxkj:~$ history 2 sudo apt-get update 3 sudo apt-g...原创 2018-10-24 10:29:50 · 493 阅读 · 0 评论 -
我的Django-blog学习(三):blog服务自动启动服务脚本 Gunicorn
根据Django搭建博客里的conf脚本配置,启动服务遇到了sudo: start: command not found原因:Ubuntu 16版本已经没有upstart这个服务了,所以设置开机启动这个功能不能仿效博主。找到了另一种解决方式,详情如下:解决参考http://bgods.cn/post/5/在/lib/systemd/system/目录下,创建服务脚本 blog.servi...原创 2018-10-24 14:00:48 · 896 阅读 · 0 评论 -
我的Django-blog学习(四):使用 Fabric3 自动化部署
Django博客教程教程中使用的是python2支持的Fabric,但是现在已经有了支持python3的Fabric3。废话不多说开始。安装pip3 install fabric3在项目根目录创建fabfile.py from fabric.api import env, runfrom fabric.operations import sudoGIT_REPO = ...原创 2018-10-24 15:06:29 · 2026 阅读 · 0 评论 -
Django笔记:导入静态文件、媒体文件
问题:Django服务启动后,网页上加载不了静态文件、样式或者媒体图片等。[01/Nov/2018 11:38:14] "GET /media/goods/images/2_20170719161414_628.jpg HTTP/1.1" 404 2060[01/Nov/2018 11:38:14] "GET /media/goods/images/2_20170719161405_249...原创 2018-11-01 15:24:27 · 505 阅读 · 0 评论 -
AssertionError: `base_name` argument not specified, and could not automatically determine the...
出现的错误AssertionError: base_name argument not specified, and could not automatically determine the name from the viewset, as it does not have a .queryset attribute.原因在views中去掉了queryset属性,改用get_querys...原创 2018-11-09 10:23:05 · 2443 阅读 · 0 评论 -
TypeError at /goods/ __str__ returned non-string (type NoneType)
今天在学习Django项目时,使用Djangorestframework出现了以下错误:问题原因由于user的model的name参数可以为空导致的class UserProfile(AbstractUser): """ 用户 """ name = models.CharField(max_length=30, null=True, blank=True,...原创 2018-11-05 16:20:19 · 751 阅读 · 0 评论 -
rest_framework序列化器中ChoiceField的choices显示value代替显示key的方法
问题:class BrandSerializer(serializers.ModelSerializer): etype = serializers.ChoiceField(choices=((0, '设备品牌'), (1, '软件品牌'), (2, '操作系统品牌')), help_text='0是设备 1是软件 2操作系统', ...原创 2018-12-13 14:23:40 · 7281 阅读 · 1 评论 -
serializers ModelSerializer的序列化中model在有外键的情况下显示name代替显示id的几种方式
问题:我想让表格的品牌列显示的是品牌表的name,而不是品牌_id的值。解决:后端方法:方法一class BrandModelNumberSerializer(serializers.ModelSerializer): brand = serializers.SerializerMethodField() class Meta: model = B...原创 2018-12-14 11:17:44 · 6144 阅读 · 0 评论 -
django使用简单的验证码模块
django>2.0django-simple-captcha安装django-simple-captchaGitHub:https://github.com/mbi/django-simple-captchadoc:https://django-simple-captcha.readthedocs.io/en/latest/配置settings.pyAdd capt...原创 2019-01-31 17:24:17 · 504 阅读 · 0 评论 -
我的Django-blog学习(一):获取url地址的新方法
最近在根据追梦人物的Django搭建博客教程里学习搭建博客的项目:在做到文章详情页的a标签的url时,在这里发现了之前我从来没用过的获取博客地址的方式原本的想法是根据后台传来的数据对象里的pk值使用{% url 'url_name' 参数 %}获得地址。新思路是在models里加一个get_url的函数,class Post(models.Model): &amp原创 2018-10-19 14:15:10 · 898 阅读 · 2 评论
分享