03 2021 档案

一文让你轻松实现基于DRF的django WEB开发及部署
摘要:最近看文档,看到个博主专栏,写的挺好,特意整理了下,做python django的web开发很实用,建议查阅。 以下内容源自:https://www.cnblogs.com/wdliu 1.基础 Django基础 Django进阶 Django之Model组件 Django之form组件 2.RES 阅读全文

posted @ 2021-03-31 11:48 进击的davis 阅读(257) 评论(0) 推荐(0)

分布式任务队列Celery(2)
摘要:Django中使用Celery 阅读全文

posted @ 2021-03-31 11:17 进击的davis 阅读(42) 评论(0) 推荐(0)

ubuntu18.04桌面版支持root登录
摘要:编代码很多时候需要直接用root登录界面,进而运行的程序的进程属主为root用户,然而ubuntu desk版本默认不让root用户登录,仅能从终端进入root用户,如果界面用root登录是否可以实现呢? linux就是那么强大,详情参见博文:ubuntu18.04桌面版支持root登录 阅读全文

posted @ 2021-03-30 17:40 进击的davis 阅读(104) 评论(0) 推荐(0)

sqlite 查询语句
摘要:基本语句结构: SELECT [DISTINCT] column1, column2 # distinct 去重 FROM table1, table2 # 筛选出哪些字段 WHERE [ conditions ] # 最开始的条件 GROUP BY column1, column2 # 分组依据 阅读全文

posted @ 2021-03-30 15:59 进击的davis 阅读(196) 评论(0) 推荐(0)

linux普通用户编辑定时任务crontab -e报错问题
摘要:最近测试脚本需要运行系统定时任务,普通用户,然后我使用命令: crontab -e 系统报错: 查到一篇博文给出的解决方案是给根目录下的tmp文件加777权限。 跟着操作,然后再crontab -e确实又可以编辑了。 回想下,确实今天上班时更改了tmp目录的权限。 阅读全文

posted @ 2021-03-30 15:20 进击的davis 阅读(362) 评论(0) 推荐(0)

linux root用户与普通用户的切换 | 免密 | 首次root login认证失败
摘要:在linux系统工作时,我们经常需要来回切换不同用户,有时root有时普通用户,下面讲讲切换用户及设置切换root用户免密的设置。 切换用户 root切换到普通用户 假设现在系统的用户有超级用户:root,普通用户:ubuntu 从root切换到普通用户很简单:su ubuntu即可。 普通切换到r 阅读全文

posted @ 2021-03-30 10:30 进击的davis 阅读(2480) 评论(0) 推荐(0)

python time模块和datetime模块
摘要:一、time模块 time模块中时间表现的格式主要有三种: a、timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量 b、struct_time时间元组,共有九个元素组。 c、format time 格式化时间,已格式化的结构使时间更具可读性。包括自定义格 阅读全文

posted @ 2021-03-29 15:47 进击的davis 阅读(74) 评论(0) 推荐(0)

基于django框架的装饰器的应用
摘要:装饰器(decorator)可以说是Python的一个神器,它可以在不改变一个函数代码和调用方式的情况下给函数添加新的功能(见一文看懂Python系列之装饰器)。装饰器广泛用于权限校验和缓存等场景,是学习Python Web开发的必备知识。Django项目中使用装饰器可以让代码将变得更干净、更可读、 阅读全文

posted @ 2021-03-27 17:09 进击的davis 阅读(272) 评论(0) 推荐(0)

基于django框架使用缓存cache
摘要:缓存(Cache)对于创建一个高性能的网站和提升用户体验来说是非常重要的,对码农而言最重要的是学会如何使用缓存。接下来看看缓存Cache应用场景及工作原理吧,并详细介绍如何在Django中设置Cache并使用它们。 什么是缓存Cache 缓存是一类可以更快的读取数据的介质统称,也指其它可以加快数据读 阅读全文

posted @ 2021-03-27 15:18 进击的davis 阅读(583) 评论(0) 推荐(0)

基于django框架的cookie,session,token认证方式
摘要:HTTP协议本身是”无状态”的,在一次请求和下一次请求之间没有任何状态保持,服务器无法识别来自同一用户的连续请求。有了cookie和session、token,服务器就可以利用它们记录客户端的访问状态了,这样用户就不用在每次访问不同页面都需要登录了,也叫单点登录。 1.cookie cookie的应 阅读全文

posted @ 2021-03-27 11:54 进击的davis 阅读(894) 评论(0) 推荐(0)

WSGI,uwsgi和uWSGI区别联系
摘要:##WSGI 全称:Web Server Gateway Interface 翻译过来就是Web服务器网关接口;WSGI是一个规范协议,定义了Web服务器如何与Python应用程序进行交互,使得使用Python写的Web应用程序可以和Web服务器对接起来。 在WSGI中定义了两个角色,Web服务器端 阅读全文

posted @ 2021-03-26 17:32 进击的davis 阅读(399) 评论(0) 推荐(0)

django框架发送email测试
摘要:主要分三步: 1.安装django-allauth 2.设置settings.py 3.编写测试代码,设置IDE 1.安装模块 pip install django-allauth 2.settings.py INSTALLED_APPS = [ 'django.contrib.admin', 'd 阅读全文

posted @ 2021-03-26 15:30 进击的davis 阅读(94) 评论(0) 推荐(0)

理解Django创建对象的create和save方法
摘要:Django的模型(Model)的本质是类,并不是一个具体的对象(Object)。当你设计好模型后,你就可以对Model进行实例化从而创建一个一个具体的对象。Django对于创建对象提供了2种不同的save与create方法,我们来仔细分析下这两种方式有什么不同。 我们来先看看下面这个例子。我们已经 阅读全文

posted @ 2021-03-26 12:30 进击的davis 阅读(2609) 评论(0) 推荐(0)

django项目实战-基本指南
摘要:###1.安装及第一个项目 ###2.MTV设计模式 ###3.任务crud小应用 ###4.模型 ###5.django orm数据查询接口 ###6.路由配置 ###7.视图 ###8.模板 ###9.表单 ###10.后台管理 阅读全文

posted @ 2021-03-25 17:56 进击的davis 阅读(110) 评论(0) 推荐(0)

django项目使用mysql作为数据库配置
摘要:Django项目中配置使用MySQL一共分四步: 安装MySQL, 创建数据库名和用户名,通过pip安装第三方库pymysql和修改配置文件settings.py。 第一步 安装MySQL Linux用户可以使用如下命令安装mysql-server。 sudo apt-get install mys 阅读全文

posted @ 2021-03-25 17:47 进击的davis 阅读(301) 评论(0) 推荐(0)

python logging模块的快速应用-输出到文件
摘要:运行程序怎能没有日志打印需求输出到文件。 如果程序要快速打log,下面的两种方式可以参考。 方式1 import logging # 引入logging模块 import os.path import time # 第一步,创建一个logger logger = logging.getLogger( 阅读全文

posted @ 2021-03-25 14:14 进击的davis 阅读(231) 评论(0) 推荐(0)

linux 安装mysql及常用配置 授权 改密 开放端口
摘要:ubuntu 18.04 1.安装 apt-get install -y mysql-server 使用上述命令即可完成mysql的安装,有些教程建议install mysql-client,实践表明,上述命令同时完成client的安装。 安装以后,mysql是在后台运行的,可以通过service命 阅读全文

posted @ 2021-03-25 14:12 进击的davis 阅读(120) 评论(0) 推荐(0)

django restframework的应用
摘要:##1.为什么要学习Django REST Framework (DRF) ##2.使用DRF的序列化器和基于函数的视图开发API ##3.基于类的视图APIView, GenericAPIView和视图集(ViewSet) ##4.玩转序列化器(Serializer) ##5.认证与权限 ##6. 阅读全文

posted @ 2021-03-24 17:08 进击的davis 阅读(37) 评论(0) 推荐(0)

python uuid的连接及简单应用
摘要:UUID是什么? UUID的全称是Universally Unique Identifier,中文为通用唯一识别码。本身是由一组32位数的16进制数字所构成,故UUID理论上的总数为1632=2128,约等于3.4 x 1038。也就是说若每纳秒产生1兆个UUID,要花100亿年才会将所有UUID使 阅读全文

posted @ 2021-03-23 14:39 进击的davis 阅读(463) 评论(0) 推荐(0)

linux主流系统配置静态ip
摘要:详情参考本博博文链接: ubuntu系统配置静态ip centos系统配置静态ip 阅读全文

posted @ 2021-03-18 10:35 进击的davis 阅读(49) 评论(0) 推荐(0)

主机ping虚拟机请求超时,虚拟机ping主机正常ping通导致ssh连接问题
摘要:今天开机时,发现打开ssh工具连接虚拟机,一直连接不上,但ssh远程的服务器又没有问题。 顺便试了下ftp工具,发现虚拟机的连接也存在问题,问题定位为主机与虚拟机通信问题。 接着在主机和虚拟机之间各自ping下对方,发现虚拟机可以ping同主机,但主机ping虚拟机,请求超时。 **问题分析:**虚 阅读全文

posted @ 2021-03-17 11:26 进击的davis 阅读(9171) 评论(0) 推荐(0)

分布式任务队列Celery(1)
摘要:一、简介 Celery是由Python开发、简单、灵活、可靠的分布式任务队列,其本质是生产者消费者模型,生产者发送任务到消息队列,消费者负责处理任务。Celery侧重于实时操作,但对调度支持也很好,其每天可以处理数以百万计的任务。特点: 简单:熟悉celery的工作流程后,配置使用简单 高可用:当任 阅读全文

posted @ 2021-03-16 15:58 进击的davis 阅读(235) 评论(2) 推荐(0)

python3实现数据结构与算法30天-排序-堆排序(8)
摘要:pass 阅读全文

posted @ 2021-03-16 08:26 进击的davis 阅读(50) 评论(0) 推荐(0)

python3实现数据结构与算法30天-排序-快速排序(7)
摘要:快速排序: 快 时间复杂度:O(nlogn) 相较冒泡排序: 如果list长度1024,冒泡是O(n^2),粗略计算应是10214*1024,快排预计1024*(log1024)=1024*10,2个数量级优势。 快速排序思路: 1.取一个元素p,第一个元素,使元素p归位 2.列表被p分成两部分,左 阅读全文

posted @ 2021-03-15 21:52 进击的davis 阅读(77) 评论(0) 推荐(0)

python3实现数据结构与算法30天-排序-插入排序(6)
摘要:思想: 1.有序区和无序区,原地排序 2.左边有序,右边无序,每次从无序抽数放入有序区,直到无序区数量0 时间复杂度:O(n^2) 代码实现: def insert_sort(lst): for i in range(1, len(lst)): # i表示抽取数的下标 temp = lst[i] j 阅读全文

posted @ 2021-03-15 21:28 进击的davis 阅读(71) 评论(0) 推荐(0)

python3实现数据结构与算法30天-排序-选择排序(5)
摘要:算法思路: 每次选出最小的,放入第一个位置, 再一趟排序记录列表无序区最小的数,放第二个位置 算法关键点:有序区和无序区,无序区最小的数 时间复杂度:O(n^2) 1.简单版-代码: import def select_sort_simple(lst): """create new list, ca 阅读全文

posted @ 2021-03-15 07:32 进击的davis 阅读(65) 评论(0) 推荐(0)

python3实现数据结构与算法30天-排序-冒泡排序(4)
摘要:##基本思想: 1.列表每两个相邻的数,如果前面的比后面大,则交换这两个数 2.一趟排序完成后,则无序区减少一个数,有序区增加一个数 注意:趟,无序区范围 时间复杂度:O(n^2) ###代码实现: import random def bubble_sort(lst): for i in range 阅读全文

posted @ 2021-03-14 23:19 进击的davis 阅读(65) 评论(0) 推荐(0)

python3实现数据结构与算法30天-查找-二分查找(3)
摘要:二分查找,折半查找,在一个排好序的列表,列表元素lst[0:n],时间复杂度:O(logn) 思想: 1.确定初始下界上界(索引-index),下界0,上界列表长度减1 2.判断条件控制while循环,下界小于上界,中间值整除2向下取整,如不满足循环,说明列表无此元素 3.情况1,fast way, 阅读全文

posted @ 2021-03-14 22:28 进击的davis 阅读(57) 评论(0) 推荐(0)

python3实现数据结构与算法30天-查找-顺序查找(2)
摘要:顺序查找,也叫线性查找,从列表的第一个元素开始,顺序进行搜索,直到找到元素或者搜索到列表的最后一个元素为止。 时间复杂度:O(n) import random def linear_search(lst, val): for index in range(len(lst)): # for index 阅读全文

posted @ 2021-03-14 18:15 进击的davis 阅读(74) 评论(0) 推荐(0)

python3实现数据结构与算法30天-汉诺塔与递归(1)
摘要:汉诺塔问题的实现,n个大小塔片,ABC左至右依次排布3根柱子,n=64, 开始塔片按小到大,依次高低垒在A柱,要求将塔片全部按原顺序全部堆在C柱 要求,每次只能移动一张塔片 注:如果每移动一块需要1秒,全部实现(2^64-1),大约5800亿年才能实现 思想: 1.总体可以分为(n-1)部分,第n块 阅读全文

posted @ 2021-03-13 22:37 进击的davis 阅读(96) 评论(0) 推荐(0)

TCP/IP协议族-应用层协议http|DNS|smtp|ftp简介
摘要:在庞大的TCP/IP协议族5层模型中,网络应用层是位于最上层的,其应用模型主要分为两种:客户/服务器模型(client/server,C/S),P2P模型。 在客户/服务器模型中,有一个总是打开的主机称为服务器,服务于许多来自其他客户机的主机请求,其工作流程如下: 1)服务器处于接收请求的状态 2) 阅读全文

posted @ 2021-03-13 14:41 进击的davis 阅读(1221) 评论(0) 推荐(0)

计算机常用技术基础大全-计组|os|网络|算法|语言|数据库
摘要:小白如何学习操作系统? 计算机网络自学指南,简直太全了! 阅读全文

posted @ 2021-03-13 10:50 进击的davis 阅读(151) 评论(0) 推荐(0)

linux之tcpdump抓包命令的使用
摘要:简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、no 阅读全文

posted @ 2021-03-11 18:23 进击的davis 阅读(1027) 评论(0) 推荐(0)

docker容器之设置固定ip起容器
摘要:有时候我们在起docker容器的时候,并不想用docker默认的ip,而是自己划分网络,起特定的ip地址,有没有办法呢? docker的强大之处就是,很多功能都是可以自己定制。通过**docker network**命令轻松实现固定ip启动容器。 下面介绍下如何使用命令。 我们先来看看docker 阅读全文

posted @ 2021-03-11 16:17 进击的davis 阅读(646) 评论(0) 推荐(0)

linux之小巧编辑工具-nano的使用
摘要:linux系统中经常会碰到文件编辑的需求,有时用vim觉得额外安装,资源又比较大,如果用nano编辑的话,耗费资源极少2m内,可以说极省空间了。 下面简单说说nano的基本使用: 创建或编辑文件 nano xxx 保存文件 ctrl + o 回车 退出 ctrl + x 编辑文件 正常编辑即可。 阅读全文

posted @ 2021-03-10 10:42 进击的davis 阅读(339) 评论(0) 推荐(0)

python的类特殊成员(属性和方法)-repr | str | call等
摘要:Python 类中,凡是以双下划线 "__" 开头和结尾命名的成员(属性和方法),都被称为类的特殊成员(特殊属性和特殊方法)。例如,类的 __init__(self) 构造方法就是典型的特殊方法。 Python 类中的特殊成员,其特殊性类似 C++ 类的 private 私有成员,即不能在类的外部直 阅读全文

posted @ 2021-03-09 15:34 进击的davis 阅读(604) 评论(0) 推荐(0)

python的logging模块详解-filters,handlers,formatters,loggers | json配置(2)
摘要:经常运行的程序,通常都有日志记录的需求,我们可以通过日志记录程序的日常访问,也可以把一些错误、警告等信息记录下来。如果你的编程语言是python,那日志模块的logging模块对你的程序开发一定很有用。 通过 logging 模块存储各种格式的日志,主要用于输出运行日志,可以设置输出日志的等级、日志 阅读全文

posted @ 2021-03-09 11:49 进击的davis 阅读(2453) 评论(0) 推荐(1)

python django框架使用logging模块配置日志 seting.py | 视图或中间件(3)
摘要:日志是我们项目开发中必不可少的,通过日志可以快速排查项目中的问题,日志对于项目的重要性不言而喻。 在python涉及的web开发中,我们常用就是django框架了,尽管django框架强大,日志模块部分,我们可以使用logging模块进行相关配置,完善web项目的日志部分。下面就对**logging 阅读全文

posted @ 2021-03-09 10:02 进击的davis 阅读(421) 评论(0) 推荐(0)

Django 优秀资源大全项目资源非 Python 包工具贡献
摘要:Awesome Django 介绍 Awesome-Django 是由 Roberto Rosario 发起和维护的 Django 资源列表。该列表收集了大量 Django 相关的优秀应用、项目等资源,方便了 Django 用户参考查阅。 Django 优秀资源大全 则是依据 Awesome-Dja 阅读全文

posted @ 2021-03-08 15:24 进击的davis 阅读(227) 评论(0) 推荐(0)

linux系统修改环境变量-export
摘要:查看PATH:echo $PATH 以添加mongodb server为列 修改方法一: export PATH=/usr/local/mongodb/bin:$PATH //配置完后可以通过echo $PATH查看配置结果。 生效方法:立即生效 有效期限:临时改变,只能在当前的终端窗口中有效,当前 阅读全文

posted @ 2021-03-06 16:31 进击的davis 阅读(1104) 评论(0) 推荐(0)

linux 彻底删除文件及 find命令permission refused问题解决
摘要:ubuntu系统 很多时候,linux系统运行时间长了,可能存在这样的问题,页面很卡,用 free -h 操作下,发现内存不足。有时有些应用程序我们不常用到,又占用比较多的内存资源,一时用不上,索性删除,用时再装上。 需求来了,怎么解决呢。 解决方案可按照以下步骤: 1.找进程 2.停止进程 3.删 阅读全文

posted @ 2021-03-06 14:34 进击的davis 阅读(631) 评论(0) 推荐(0)

ubuntu系统中dpkg lock问题分析及解决
摘要:通常我们在执行 apt install xxx 或者 apt-get install xxx,系统报错,系统不能获取前台锁,其原因分以下两种: 1).进程中存在与 apt 相关的正在运行的进程 2).没有与 apt 相关进程,但有 lock file ,其中 lock file是为了防止两个及以上进 阅读全文

posted @ 2021-03-05 18:47 进击的davis 阅读(2667) 评论(0) 推荐(1)

ubuntu server18.04 更换默认源为阿里源-加速
摘要:Ubuntu安装完毕后,默认使用的是官方的源,在国内访问速度很慢,这里介绍更换为阿里云的源方法。 安装server时建议替换镜像源,可以提速 原镜像: http://cn.archive.ubuntu.com/ubuntu/ 更换为: http://mirrors.aliyun.com/ubuntu 阅读全文

posted @ 2021-03-04 15:12 进击的davis 阅读(685) 评论(0) 推荐(0)

docker安装与卸载( liunx )
摘要:安装docker ubuntu apt-get update apt install -y docker.io 菜鸟教程:ubuntu安装docker centos yum update yum install -y docker.io 菜鸟教程:centos安装docker 教程中有常见的国内镜像 阅读全文

posted @ 2021-03-04 14:14 进击的davis 阅读(222) 评论(0) 推荐(0)

ubuntu下dpkg lock问题
摘要:用apt-get命令安装一些软件包时,总报错: could not get lock /var/lib/dpkg/lock -open 有可能是其他程序在使用安装管理软件等 解决方法:输入以下命令 sudo rm /var/cache/apt/archives/lock sudo rm /var/l 阅读全文

posted @ 2021-03-04 11:47 进击的davis 阅读(129) 评论(0) 推荐(0)

docker pull报x509问题及docker启动失败问题解决
摘要:docker pull 报x509 最近通过docker pull拉取私有仓库镜像出错,具体报错(证书问题): docker pull 私有仓库ip/资源路径 x509: certificate has expired or is not yet valid 要注意。如果报509问题通常两方面原因: 阅读全文

posted @ 2021-03-04 11:43 进击的davis 阅读(13268) 评论(0) 推荐(1)

windows 常用命令行操作
摘要:目录操作 >pwd 打印当前工作目录,通过此关键词可以查看当前所处的路径 >cd 更改目录,用于多个目录之间的切换 具体输入: cd 目录名 cd 目录名/子目录名(可通过此方式到达最底层的目录) cd ~ (返回home目录) cd ..(返回上一级目录) cd ../..(返回上两级目录) cd 阅读全文

posted @ 2021-03-04 10:23 进击的davis 阅读(796) 评论(0) 推荐(0)

uwsgi运行django应用是报错no app loaded. going in full dynamic mode
摘要:今天测试uwsgi运行uwsgi.ini的时候,报错: 网上搜了一天,大都不知原因,还是google吧:github问题解决 说说问题原因吧: 根据uwsgi的提示,应该是wsgi.py的application导入问题导致,根据报错,可以尝试用python 导入试试 python -c "from 阅读全文

posted @ 2021-03-03 19:08 进击的davis 阅读(1455) 评论(0) 推荐(0)

internal server error原因及解决
摘要:常见的内部服务错误的原因有二,一是服务器资源紧张,二是文件权限错误。 1.错误的原因一:服务器资源超载。服务器的资源超载:即同一时间内处理器有太多的进程需要处理的时候,会出现500错误。借助SSH,可以在命令行中输入以下命令查看:ps aux |grep username 如果查到某个进程消耗过多资 阅读全文

posted @ 2021-03-03 16:02 进击的davis 阅读(9504) 评论(0) 推荐(0)

docker-compose启动容器后执行脚本或命令不退出 | 运行内部程序
摘要:说下我的需求,就是在使用 docker-compose 启动server容器后,执行命令或者执行脚本运行容器内部的进程。 容器是个基于django框架的web server,通过uwsgi启动,我是这样操作的: 1.在docker-compose.yaml文件中,在容器设置部分加入entrypoin 阅读全文

posted @ 2021-03-03 11:59 进击的davis 阅读(21200) 评论(0) 推荐(0)

docker容器之dockerfile&docker-compose CMD/entrypoint详解
摘要:本文目录 [隐藏]I. CMDII. ENTRYPOINTIII. 示例ENTRYPOINTCMD/command 此前的RUN和CMD,我们知道,RUN是构建的时候运行的命令,在镜像完成后RUN就运行结束。随后推送到仓库中,这些RUN命令是不会在进行运行的。 - init 在Docker上下文中, 阅读全文

posted @ 2021-03-03 10:51 进击的davis 阅读(18107) 评论(0) 推荐(0)

python3快速实现ftp服务器
摘要:在ubuntu18.04下,想要快速搭建基于python3的ftp文件服务器,只需2步: 1.安装python3 2.python启动命令 安装python3略过,说下python的启动命令 python3 -m http.server 8090 # 绑定8090端口,当然缺省情况默认8000,0. 阅读全文

posted @ 2021-03-02 14:31 进击的davis 阅读(839) 评论(0) 推荐(0)

docker容器之run命令
摘要:命令格式:docker run [OPTIONS] IMAGE [COMMAND] [ARG...] Usage: Run a command in a new container 中文意思为:通过run命令创建一个新的容器(container) 常用选项说明 -d, --detach=false, 阅读全文

posted @ 2021-03-02 09:53 进击的davis 阅读(662) 评论(0) 推荐(0)

linux的目录系统
摘要:linux系统目录,在根目录中执行 ls,可看到如下文件: 树状目录结构: 以下是对这些目录的解释: /bin: bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。 /boot: 这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。 阅读全文

posted @ 2021-03-01 17:07 进击的davis 阅读(94) 评论(0) 推荐(0)

docker容器之实现 nat 转换收发
摘要:最近遇到个业务问题,在linux中**docker run** 启动容器时,我们可以通过**-p**,然后绑定host与容器的端口,实现端口映射,但如果不用这个实现端口映射,我们有没有其他的解决方案了呢? 答案,有。 在host设置**iptables规则实现nat**网络地址转换,也可以实现外部来 阅读全文

posted @ 2021-03-01 11:48 进击的davis 阅读(4743) 评论(0) 推荐(1)

导航