博客文章

598 篇文章

DADealiAxy

Flutter开发:ListView手动滚动到底部

这个问题搜了很久都没找到,国内关于flutter的研究好像还没多少,不过stackoverflow真的是万能的,这里记录一下~ 原文 Use ScrollController.jumpTo() or ScrollController.animateTo() method to achieve this. Here is code snippet (After 1 second, the ListV

12-18
2021-12-18
2067
Flutter
DADealiAxy

解决Centos下docker容器无法联网

vi /etc/sysctl.conf 找到net.ipv4.ip_forward 设置允许转发 # Controls IP packet forwarding net.ipv4.ip_forward = 1 #使之生效 sysctl -p #重启docker systemctl restart docker

12-18
2021-12-18
7992
docker
DADealiAxy

国内使用docker镜像加速器

国内镜像源 国内的镜像源有 docker官方中国区 https://registry.docker-cn.com 网易 http://hub-mirror.c.163.com ustc http://docker.mirrors.ustc.edu.cn 阿里云 http://<你的ID>.mirror.aliyuncs.com 注意 注意registry-mirrors千万不要用https,而是用

12-18
2021-12-18
8913
docker
DADealiAxy

Django与Vue.js模板语法冲突问题的解决

问题 django模板与vue.js的变量都是使用 {{ 和 }} 包裹起来的,在渲染django模板时会先替代掉所有的 {{ 和 }}及被包裹在其中的内容,使得vue.js没办法用 {{ 和 }}来绑定变量。 解决方法 方法1:修改vue.js的默认的绑定符号 在Vue App创建时配置 let app = new Vue({ delimiters: [[[, ]]], el: '#vu

12-18
2022-08-26
5170
0_Django开发常见问题
DADealiAxy

Django更换数据库和迁移数据方案

前言 双十一光顾着买东西都没怎么写文章,现在笔记里还有十几篇半成品文章没写完… 今天来分享一下 Django 项目切换数据库和迁移数据的方案,网络上找到的文章方法不一,且使用中容易遇到各类报错,本文根据 Django 官方文档和工作中的经验,稳定可靠,在博客中长期更新~ 如果你遇到同样的问题,阅读本文应该能得到比较好的解决方案。 基本步骤 Django 默认使用 SQLite 数据库方便开发,同时

12-18
2022-11-12
9360
Django
DADealiAxy

配置Django-TinyMCE组件支持上传图片功能

Django自带的Admin后台,好用,TinyMCE作为富文本编辑器,也蛮好用的,这两者结合起来在做博客的时候很方便(当然博客可能更适合用Markdown来写),但是Django-TinyMCE这个组件默认没有图片上传功能的,需要我们自己实现,本文将一步步带大家实现这个图片上传功能。 读者也可以举一反三实现其他需要和Django结合的功能。 编写上传图片逻辑 在任一views.py里添加代码:

12-18
2021-12-18
8808
Django
DADealiAxy

轻松搞定Django分页功能

view代码 from django.core.paginator import Paginator def announcement(request): ctx = { 'global': GlobalCtx, 'announcements': models.Announcement.objects.all(), } paginator

12-18
2022-05-27
7742
Django
DADealiAxy

设置Django关闭Debug后的静态文件路由

Django在Debug模式关闭掉后请求静态文件时,返回404相应码,后台的请求url是"GET /static/css/404.css HTTP/1.1" 404 1217,找不到静态文件的url。通过配置静态文件的url和命令行启动来实现静态文件的获取。 URL中的配置 django的静态文件是通过``来管理的。配置静态文件的响应是通过serve()函数数显的。url.py中的配置如下: fr

12-18
2021-12-18
3709
Django
DADealiAxy

解决drf-yasg中的SwaggerAPI无法正确分组问题

swagger是后台开发中很好用的交互式文档,Django原本的Django-Swagger已经停止维护了,现在一般用drf_yasg这个包来实现文档,它里面支持swagger和redoc两种,redoc是静态的,作为导出文档的话不错,不过一般我们用swagger,因为可以在文档里面调试,非常方便。 Drf里面有个东西是AutoSchema,可以自动扫描ViewSet和APIView这类可以提供接

12-18
2022-04-04
4596
0_Swagger与drf-yasg接口文档系列
DADealiAxy

解决Django使用Jinja2模版引擎之后admin无法访问的问题

需要两个文件 说明:这两个文件放在哪里都是ok,但是要记住路径,待会配置的时候需要输入。 建议放在和settings.py同个目录下面。 创建backends.py文件: import sys from django.template.backends import jinja2 as jinja2backend from django.template.backends.utils impor

12-18
2022-05-27
3308
0_Django开发常见问题
DADealiAxy

聊聊Django应用的部署和性能的那些事儿

前言 随着工作的深入,我越来越发现Python Web开发中有很多坑,也一直在羡慕AspNetCore和Go等的可执行文件部署和高性能,以及Spring生态的丰富,不过因为工作用了Django,生活还是要继续的嘛,这Django好歹也是有很大份额的Web框架,也没那么不堪,至少开发速度上就吊打一众框架了~ 在之前的文章里我介绍过使用Docker部署Django应用的方法,不过那种部署方式只适合上线

12-18
2022-05-27
6927
Django
DADealiAxy

给Django的Admin添加自定义Action-并移除需要选择对象的限制

前言 不得不说,Django的Admin真的给开发带来很多便利,这不,我又来折腾了,这次是添加自定义的action 这个自定义的Action可以看看官方文档的介绍,很详细,不再赘述。 https://docs.djangoproject.com/en/3.0/ref/contrib/admin/actions/ 界面效果 Django默认的添加完action是要选择下面的对象才能提交的,不过我不需

12-18
2022-08-26
8120
Django
DADealiAxy

给Django-Admin添加验证码和多次登录尝试限制

Django自带的Admin很好用,但是放到生产环境总还差了点什么= = 看看admin的介绍: Django奉行Python的内置电池哲学。它自带了一系列在Web开发中用于解决常见问题或需求的额外的、可选工具。这些工具和插件,例如django.contrib.redirects都必须在settings中的INSTALLED_APPS处进行注册,有的还需要执行manage.py migrate命令

12-18
2021-12-18
1071
Django
DADealiAxy

经验总结-drf-yasg接口文档几个细节的自定义方式

drf-yasg是Django RestFramework的一个扩展, 可以根据路由生成OpenApi接口, 不过用起来和在Java平台和.NetCore有很多不一样的, 有些自定义的地方也比较麻烦, 不过看看文档也还好, 可以解决. 本文记录几个在实际开发中遇到的, 虽然是细节, 但是优化好细节可以给对接的同事带来很大的方便~ 顺带一提, Python写后台真的太快了, 一上午出几十个接口你能信

12-18
2022-04-04
2948
0_Swagger与drf-yasg接口文档系列
DADealiAxy

比Django官方实现更好的分页组件+Bootstrap整合

前言 Django全家桶自带的分页组件只能说能满足分页这个功能,但是没那么好用就是了 Django的分页效果 django-pure-pagination分页效果 使用方法 首先安装: pip install django-pure-pagination 添加到App INSTALLED_APPS = ( ... 'pure_pagination', ) 配置一下,配置说明如图 P

12-18
2021-12-18
1174
Django
DADealiAxy

Django应用部署:Docker容器化实践

在此之前,我一直用uwsgi+virtualenv+nginx方式进行应用部署,操作起来比较麻烦,而且依赖于服务器上的Python版本,服务的管理方面单纯uwsgi + pid算不上特别麻烦但总没有docker compose方便,无奈原本的服务器是32位系统的用不上docker,现在又增加了一个新服务器,所以赶紧把docker安排上~ 不得不说真的太简单太方便了,全程傻瓜式操作,也基本没像之前u

12-18
2021-12-18
7078
Django
DADealiAxy

使用easy_thumbnails轻松为图片创建缩略图

关于Django的缩略图 我在Django的官方文档里看了一下,没有找到有关缩略图的官方库,不过在Django的Wiki里头倒是看到了一篇关于使用缩略图的介绍,请参考:https://code.djangoproject.com/wiki/ThumbNails 关于Problem的描述 The majority of applications that have images, probably

12-18
2022-08-26
5198
Django
DADealiAxy

一小时完成后台开发:DjangoRestFramework开发实践

DjangoRestFramework开发实践 在这之前我写过一篇关于Django与Drf快速开发实践的博客,Django快速开发实践:Drf框架和xadmin配置指北,粗略说了一下Drf配置和基本使用,不过里面只是涉及到最基本的CRUD,在正常的后端开发中涉及的诸如认证和权限、消息队列、缓存之类的操作,上一篇博客并没有涉及,这次开发我仔细了看了官方文档的这几个部分,把这部分的功能完善了起来。 D

12-18
2021-12-18
8117
Django
DADealiAxy

CSRF-verification-failed-Request-aborted

About the CSRF_Token (From Django Official Document) The CSRF middleware and template tag provides easy-to-use protection against Cross Site Request Forgeries. This type of attack occurs when a malici

12-18
2022-04-02
2275
0_Django开发常见问题
DADealiAxy

Django中「强行」使用MVVM设计模式

扫盲 首先带大家了解一下什么是MVVM模式: 什么是MVVM?MVVM是Model-View-ViewModel的缩写。 MVVM是MVC的增强版,实质上和MVC没有本质区别,只是代码的位置变动而已 从名字上看,MVVM比MVC架构中多了一个ViewModel,没错,就是这个ViewModel,他是MVVM相对于MVC改进的核心思想。在开发过程中,由于需求的变更或添加,项目的复杂度越来越高,代码量

12-18
2021-12-18
7866
Django
DADealiAxy

Django-Filter介绍与刁钻需求的实现方法

Django-Filter是一个非常好用的第三方库,很好的利用了Django ORM的特性,可以使用很少的代码就扩展原有的接口,实现多种筛选功能~ 场景 Model定义的部分代码,可以看到需求模型包括了 关键词 keyword、区域 region、需求状态 require_status,这三个字段 class Require(models.Model): 需求 keyword =

12-18
2021-12-18
7201
Django
DADealiAxy

Python-Web:Django模板继承

模板可以用继承的方式来实现复用。 接下来我们先创建之前项目的 templates 目录中添加 base.html 文件,代码如下: !DOCTYPE html html head meta charset=utf-8 title标题/title /head body h1Hello World!/h1 pDA Django 测试。/p {% block mainbody %

12-18
2021-12-18
9002
0_Python-Web-Django入门系列笔记
DADealiAxy

Python-Web:Django-模板标签

if/else 标签 基本语法格式如下: {% if condition %} ... display {% endif %} 或者: {% if condition1 %} ... display 1 {% elif condition2 %} ... display 2 {% else %} ... display 3 {% endif %} 根据条件判断是否输出。

12-18
2021-12-18
2478
0_Python-Web-Django入门系列笔记
DADealiAxy

Python-Web-Django:第一个Web-App的构建

View视图渲染 编辑App目录下的views.py from django.shortcuts import render from django.http import HttpResponse # Create your views here. def hello(request): return HttpResponse(Hello Django!) URL解析配置 编辑urls

12-18
2021-12-18
3651
0_Python-Web-Django入门系列笔记
DADealiAxy

Python-Web-Django:开始Django之旅

前言 开源的Web框架Django简单易用,稳定性和灵活性高,因此被广泛应用于商业化环境,它充分利用了Python拥有丰富的库这一优势。 Django的安装和服务器的搭建 安装Django库: pip install django 新建Web应用: django-admin startproject hello_django 以上命令会在当前文件夹下建立hello_django目录。 目录结构如下

12-18
2021-12-18
6662
0_Python-Web-Django入门系列笔记
DADealiAxy

Python-Web-Django:settings-py-配置

安装REST框架 pip install djangorestframework pip install django-rest-swagger 安装了REST Framework之后,之前创建的Django App(hello_app)就可以使用REST API进行通信。 我们所有创建的App都要添加到INSTALLED_APPS这个字段里面。 INSTALLED_APPS = [ #

12-18
2021-12-18
4651
0_Python-Web-Django入门系列笔记
DADealiAxy

Django:为模板渲染加入Markdown支持

两种方法 Django 的django-markdown-deux模块 Python模块 markdown django-markdown-deux 首先需要安装: pip install django-markdown-deux 修改setting.py 把markdown-deux添加进去 INSTALLED_APPS = [ 'markdown-deux', ] 在模板里添加tags

12-18
2022-04-02
1354
Django
DADealiAxy

Django项目笔记:sessions处理以及复杂对象序列化

前言:一点题外话 我发现,不更新博客的时候,不是非常忙,就是效率非常低。最近没怎么更新博客,原因是第二种= =。惭愧惭愧。 今天效率出奇的高,一天时间把PassNote后端的接口全部写完了,Django很好用,不过实际项目中还是有些框架不能实现的功能需要解决的,我比较喜欢造轮子,不过为了保证效率,还是尽量用现成的工具,减少不必要的折腾。 关于PassNote 之前应该在博客有说过,这是一个密码管理

12-18
2022-04-02
9646
Django
DADealiAxy

Django清空所有数据和重建表结构

清空所有数据 python manage.py flush 重建表结构 删除数据库中所有表 删除应用文件夹下的migrations目录内所有文件,除了__init__.py 执行以下命令 python manage.py makemigrations python manage.py migrate

12-18
2021-12-18
9298
0_Django基础知识
DADealiAxy

Django数据导入导出神器django-import-export使用

前言 Django以快速开发闻名,但是如果处理数据的导出导入还需要自己写脚本,那就有违“Python之禅”了…… 而且导数据通常需要不同的格式,Excel、csv、json等,每种格式的数据就要写一个脚本太麻烦了,这时直接祭出django-import-export这个神器,官方一句话介绍:django-import-export is a Django application and libra

12-18
2021-12-18
9254
Django
DADealiAxy

Django快速开发实践:Drf框架和xadmin配置指北

步骤 既然是快速开发,那废话不多说,直接说步骤: 安装Djagno 安装Django Rest Framework 定义models 定义Rest framework的serializers 定义Rest framework的viewsets 配置Rest framework的router 配置管理后台admin 根据需要写template和对应的view 经过这些步骤就能得到一个具备完整的后端接

12-18
2022-09-06
7537
Django
DADealiAxy

Django应用部署:uwsgi+Nginx方式

环境准备 nginx+uwsgi方式部署顾名思义,需要nginx和uwsgi两个软件包。 nginx不用说,是必备的,关于nginx的安装本文不再赘述,详情可以自行搜索或者参考我以前的文章: Debian8搭建LEMP环境 安装uwsgi pip install uwsgi 上传项目代码 & 测试 # 进入项目目录,具体目录请自行选择 cd /path/to/project # 建立虚拟环境 v

12-18
2022-04-02
1091
Django
DADealiAxy

Django应用中的静态文件处理

在日常开发中,我们都是把Django的Debug模式打开,方便调试,在这个模式下,由Django内置的Web服务器提供静态文件服务,不过需要进行一些配置,才能正确访问。 配置settings # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/3.0/howto/static-files/ ST

12-18
2021-12-18
126
0_Django基础知识
DADealiAxy

Django全文检索实现:HayStack-+-Whoosh-+-Jieba

涉及到的工具 haystack是django的开源搜索框架,该框架支持**Solr**, Elasticsearch, Whoosh, **Xapian搜索引擎,不用更改代码,直接切换引擎,减少代码量。 搜索引擎使用Whoosh,这是一个由纯Python实现的全文搜索引擎,没有二进制文件等,比较小巧,配置比较简单,当然性能自然略低。 中文分词Jieba,由于Whoosh自带的是英文分词,对中文的分

12-18
2022-08-26
5891
Django
DADealiAxy

Django中间件之实现Admin后台IP白名单

前言 Django自带的Admin管理后台很方便,但是实际生产环境真的会有挺多安全问题的,在admin的安全防护这方面,我之前就研究实现了给admin加上登录验证码和限流功能,可以参考这篇文章:给Django Admin添加验证码和多次登录尝试限制 不过就在内部使用的话就好很多,因此我们可以通过Django的中间件来实现IP过滤,所以本文中涉及到两个知识点,一个是Django的中间件,另外一个是P

12-18
2022-08-26
3946
Django
DADealiAxy

Django解决跨域请求问题

几种方法 使用django-cors-headers全局控制**(推荐)** 使用JsonP,只能用于Get方法 在views.py里设置响应头,只能控制单个接口 django-cors-headers 首先安装 pip install django-cors-headers 然后在settings.py里配置一番就可以 INSTALLED_APPS = [ ... 'corshe

12-18
2022-08-26
5886
0_Django基础知识
DADealiAxy

Django-Import-Export插件关于外键的处理

前言 Django-Import-Export是一款很好用很方便的Django数据导出导入插件,可以和DjangoAdmin管理后台完美集成,只需要少量的代码配置即可方便实现你要的多种格式导出导入,关于这个插件的使用更多可以看我之前的文章:这里放文章链接 之前我在使用中都是专门做了一个原始数据的表来存导入的数据,然后再对原始数据表做一些数据处理,把数据存到其他表才能真正使用这些数据。(不是很好的做

12-18
2022-04-02
4167
Django
DADealiAxy

Django使用django-filer上传图片

前言 (好像不知道写啥) 注意 django-filer目前只支持到django 1.11 setting.py INSTALLED_APPS = [ # image support 'easy_thumbnails', 'filer', 'mptt', ] # Image Upload Support THUMBNAIL_HIGH_RESOLUTION = Tr

12-18
2022-05-27
5258
0_Django基础知识
DADealiAxy

Django+Logging:日志记录配置与使用方法

前言 日志在程序开发中是少不了的,通过日志我们可以分析到错误在什么地方,有什么异常。在生产环境下有很大的用途。在Java开发中通常用log4j,logback等第三方组件。那么在django中是怎么处理日志?django利用的就是Python提供的logging模块,但django中要用logging,还得有一定的配置规则,需要在setting中设置。 Logging模块 Logging模块为应用

12-18
2022-04-02
6069
Django
DADealiAxy

Django的信号机制入门

概念 django自带一套信号机制来帮助我们在框架的不同位置之间传递信息。也就是说,当某一事件发生时,信号系统可以允许一个或多个发送者(senders)将通知或信号(signals)发送给一组接受者(receivers)。 (感觉就很像Qt的信号与槽机制) 信号系统包含以下三要素: 发送者-信号的发出方 信号-信号本身 接收者-信号的接受者 Django内置了一整套信号,下面是一些比较常用的: 在

12-18
2022-08-26
8354
Django
DADealiAxy

2021-11-03:2021年第六届沃网安竞赛-WriteUp-MISC部分

前言 最近好久没更新博客和公众号了,有朋友问是不是在憋大招,但我不好意思说其实是因为最近一段时间太懒了,一直在当咸鱼… 意识到很久没更新这个问题,我是想写点什么的,但好像一直当咸鱼也没啥可分享的,最近刚参加了一个CTF比赛,来分享一些作为CTF小白的解题过程和思路~ 由于篇幅太长,所以本文第一篇就先只发MISC部分,相比较于固定类型的几种题目,MISC是最好玩的,比较考验知识广度和想象力~~(而且

12-18
2021-12-18
4256
CTF
DADealiAxy

2020-09-08-第一天:CTF-Crypto

这第一天CTF记录?一堆图啥也没说,看得我翻白眼。谁会浪费时间看这种东西?

12-18
2021-12-18
8015
CTF
DADealiAxy

2020-09-08-第一天学习:概念了解

第一天学习概念了解?呵,无聊透顶。概念?就这?翻白眼。

12-18
2021-12-18
9320
CTF
DADealiAxy

试一下用DotNetCore来做机器学习,ML-Net框架跑起来

ML.Net简介 官网:https://dotnet.microsoft.com/apps/machinelearning-ai/ml-dotnet 官方介绍:The ML.NET command line interface (CLI), provides tools for building machine learning models with ML.NET. ML.NET 是面向.NET

12-18
2021-12-18
4254
C#
DADealiAxy

方便的C#-Json库:Json-Net

官网 Json.Net用法很简单,本文也只是搬运了一下官网的例子,更多用法可以查看官网,一分钟就能上手。 https://www.newtonsoft.com/json 使用例子 对象序列化 Product product = new Product(); product.Name = Apple; product.Expiry = new DateTime(2008, 12, 28); prod

12-18
2022-05-27
1079
C#
DADealiAxy

在.NetCore(C#)中使用ODP-NET-Core+Dapper操作Oracle数据库

前言 虽然一直在说“去IOE化”,但是在国企和政府,Oracle的历史包袱实在太重了,甚至很多业务逻辑都是写在Oracle的各种存储过程里面实现的…… 我们的系统主要的技术栈是Django / Spring / AspNetCore,Java的不必说对Oracle支持肯定没问题,关键在于Django对Oracle版本有要求,兼容性不是特别好,Oracle版本没办法随意升级的,所以我想到用.Net

12-18
2021-12-18
2396
C#
DADealiAxy

在.NETCore(C#)中使用EPPlus-Core导出Excel文档

首先安装 直接NuGet安装就行,贼方便。 使用方法 有很多种办法导出,本文只介绍最方便,代码最少的那种。 首先定义一个实体类,例如: public class OutputData { public string Address { get; set; } public int Title { get; set; } public int Description { ge

12-18
2021-12-18
1607
C#
DADealiAxy

C#爬虫:CatSpider#-开发笔记

前言 (PS:我这里用了#号代替了Sharp这个单词) CatSpider是毕设里的数据采集模块,本来爬虫类的应用肯定使用python来开发嘛,不过用request_html做解析的时候,python的动态类型真的把我恶心到了,而且感觉这个库也不是很成熟,html5lib也不好用,也没心思去深入了,之前看到有大佬用.net core平台做爬虫,于是我也来试试,没想到效果贼好,特别是配合LinqPa

12-18
2022-05-27
5177
C#
9 页,共 13
每页:
......