- 博客(70)
- 收藏
- 关注
原创 博客搬家了(放弃CSDN 转向个人博客 或者博客园)
博客搬家了个人博客地址:https://www.charmcode.cn/ 代码的魅力采用 Django2.2 + Python3.6 前后端不分离前端扒的 matery 主题 https://github.com/blinkfox/hexo-theme-matery主要分享语言Python3 , JavaScript 相关,部分Java知识。框架Flask, FastAPI, Vue等数据库MySql, Redis等...
2020-06-16 18:01:57 455 2
原创 Python3 和 PyQt5 打包成exe可执行文件
1 安装pyinstallerpip install pyinstaller2 打包pyinstaller.exe -F -w E:\Python_code\linux_mytool\weixin_account\main.py
2021-01-07 15:37:02 594
原创 【FastAPI 学习十二】定时任务篇 (移步博客园或个人网站 无广告,界面清爽整洁)
声明目前个人放弃CSDN平台,文章只发布于个人网站和博客园博客园地址【FastAPI 学习十二】定时任务篇
2020-12-25 22:51:53 991 1
原创 【FastAPI 十一项目生成器】 项目目录结构demo(自己改版)
FastAPI和MySql项目生成器,使用sqlalchemy ORM。之前呢使用FastAPI是为了配合学习Vue,尝试性写的API服务接口,后面放到Github上面,感觉代码写的很烂,没想到我关于FastAPI的项目有40多个老哥点star,还有几位老哥issue给出建议,或者咨询我FastAPI的问题,都表示这方面的资料很少,所以我感觉自己有必要写这么一个项目,帮助大家更好的学习FastAPI。以下是我在GitHub托管的 fastapi-mysql-generator FastAPI项目生成
2020-10-16 17:34:06 2439 1
原创 Vue pdf 多文件全部页面显示 使用笔记
pdf 多文件页面全部显示最早发布于博客园参考链接https://github.com/FranckFreiburger/vue-pdf#createloadingtasksrc单个文件安装npm install --save vue-pdf单个pdf文件显示全部,我是直接复制的参考链接<template> <div> <pdf v-for="i in numPages" :key="i" :src="src" :page="i"
2020-09-08 10:46:16 6446 5
原创 FastAPI WebSocket 基本使用二 分组发送Json数据
FastAPI WebSocket 分组发送Json数据用户1和 用户2 可以互相发送私信消息用户1 2 3之间相当于一个群,可以发送广播消息效果代码FastAPI 服务端代码#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2020/8/19 13:38# @Author : CoderCharm# @File : main.py# @Software: PyCharm# @Github : g
2020-08-24 13:21:01 1446
原创 webstorm 2018.2 EsLint报错 TypeError: this.CliEngine is not a constructor
webstorm 2018.2 EsLint报错 TypeError: this.CliEngine is not a constructor报错结果原因因为webstorm 2018.2版本对 高版本对EsLint不兼容解决办法降低EsLint 版本npm i eslint@5.6.0 -D降低版本后,头部对警告就消失了...
2020-08-24 13:18:10 426
原创 Go string转Map 和 Map嵌套取值 和 interface转string
Go字符串转Map 和 Map的嵌套取值想用Go写爬虫联系一下语法的,结果数据类型转换还不熟悉。map嵌套取值就会报错type interface {} does not support indexing字符串转Map// 示例字符串resString := `{ "args": {}, "headers": { "Accept-Encoding": "gzip", "Host": "httpbin.org", "User-Agent": "GRequests/0.10
2020-08-21 11:57:52 3703
原创 Vant Toast loading加载使用
Vant Toast显示加载点击提交按钮时,触发请求,请求过程中显示加载弹窗,并且弹窗会遮挡整个页面的事件,不可点击。官网 https://youzan.github.io/vant/#/zh-CN/toast自己做个笔记,感觉加载的用法和element ui有点区别以下使用的CDN方式引入使用,和脚手架使用区别不大。效果图以下是CDN方式引入使用,axios也没有封装。Toast加载的时候,发送验证码等按钮点击事件会被阻止。methods: { // 提交表单 onSubmit(val
2020-08-20 14:29:17 22752 2
原创 FastAPI WebSocket 简单演示 一
FastAPI WebSocket 简单演示下午没事看了看WebSocket,感觉这个听好玩的,比写CRUD有意思。就复制了官网的demo演示看了看。官方文档效果
2020-08-20 00:18:45 2862
原创 Vant van-uploader 图片上传压缩 不缩减长宽
Vant 图片上传压缩还是接着上一篇文章,表单图片压缩,然后上传。图片压缩js压缩,就是用canvas对象重新在画一张图。关于js canvas压缩的代码有很多,我这里就不赘述了。van-uploader 上传压缩首先先看官网 https://youzan.github.io/vant/#/zh-CN/uploader部分代码<van-uploader accept="image/gif, image/jpeg ,image/png" :after-r
2020-08-19 22:14:31 4420 4
原创 Vant UI表单验证报错 TypeError: Cannot read property ‘reduce‘ of undefined
VantUI 表单验证
2020-08-19 21:45:48 3646 4
原创 Go 正则类似Python findall()方法
go正则之前用Python正则提取的数据,现在想改成go来写,python正则中的findall()用的很顺手, go里面也有类似的方法 FindAllStringSubmatch官网 https://golang.org/pkg/regexp/#Regexp.FindAllStringSubmatch方法对比下面用示例对比下,比如写爬虫最常见的就是提取标签中的数据。现在给出一个字符串,提取出其中h2,em标签内部的数据。测试测试<h2>h2内部数据h2111111</h2
2020-08-17 21:53:01 1233
原创 Go mod 包管理
go mod包管理基本每个语言都有自己的包管理工具,node的npm,yarn;Python pipenv,venv;Java的maven等等,go 当然也有自己的包管理工具 mod(Modules简写)参考链接官方github https://github.com/golang/go/wiki/Modules#how-to-use-modules官方文档 https://blog.golang.org/using-go-modules要求go版本>=1.11,推荐go 1.13或以
2020-08-09 23:23:58 471
原创 webpack笔记三 Vue项目使用WebPack配置
Vue项目使用WebPack配置准确的说是vue-cli中使用webpack配置参考链接Vue-cli webpack 相关 https://cli.vuejs.org/zh/guide/webpack.htmlVue-cli4 生成项目的时候,会自动生成很多配置文件,自带babel语法转换,初始化webpack配置等操作。Vue ui 创建项目失败时参考链接 https://github.com/vuejs/vue-cli/issues/889vue --version // 查
2020-08-07 22:45:50 416
原创 webpack 笔记二 使用核心概念
WebPack使用核心概念参考文档webpack v4.44.1中文文档 https://www.webpackjs.com/concepts/webpack v5.0.0-beta.24 https://webpack.js.org/concepts/四个核心组成入口 Entry输出 Output加载解释 Loaders插件 Plugins加上- 模式 Mode- 浏览器兼容性Browser Compatibility示例目录结构src |- index.js
2020-08-07 22:45:08 194
原创 webpack笔记一 使用webpack打包
webpack入门一 使用webpack打包用于编译javascript模块的工具,命令知道会用就行。官方文档 https://webpack.js.org/guides/getting-started/入门体验// 创建一个demo文件夹mkdir webpack-demo// 进入文件夹cd webpack-demo// 初始化npm init -y// 安装webpack依赖npm install webpack webpack-cli --save-dev在webpac
2020-08-07 22:44:25 221
原创 Vue 最优组件强制刷新
Vue组件强制刷新这篇文章是接上篇文章,自己实现markdown编辑器时,碰到的问题https://www.charmcode.cn/article/2020-08-02_vue_editor我左边输入了内容,右边markdown组件实施更新强制刷新组件Vue官网 key的描述可以查看Vue官网,关于key的描述以便它能跟踪每个节点的身份,从而重用和重新排序现有元素,你需要为每项提供一个唯一 key attribute:Vue中的虚拟dom树也是根据key的变化,来判断是否刷新组件,
2020-08-02 22:18:46 362
原创 Vue lodash.debounce防抖函数
Vue 中使用防抖函数这篇文章也是衔接我之前文章,输入内容延迟显示。一般防抖函数,一般都是自己写,或者直接搜的类似这种function debounce(fn,wait){ var timer = null; return function(){ if(timer !== null){ clearTimeout(timer); } timer = setTimeout(fn,wait); }}Vue官
2020-08-02 22:17:24 1366
原创 【Go 基础学习 二】结构体 构造方法
Go 结构体由于go没有class类, 很多语法类似C,继承使用了C的结构体struct但是我看到go结构体里面,一般都是定义变量属性,没看到定义方法的,那么如何实现构造方法了?结构体package mainimport ( "fmt")// 声明一个结构体type Cat struct { name string color string sex bool couple Mouse // 这里赋值为 另一个结构体, 如果和结构体名一样 可以省略一个}/
2020-07-30 22:18:32 1120
原创 【Go基础学习 一】 指针和地址
Go语言基础学习 指针和地址有几个很不错的学习教程,感觉很不错GitHub开源go学习教程 https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/preface.mdB站教程 https://space.bilibili.com/322210472/channel/detail?cid=108884最后就是go官网了https://golang.org/doc/go官网练习 https://t
2020-07-29 23:45:01 530
原创 【FastAPI后台API 十】使用Redis
在FastAPI中 使用Redis本来是想直接使用redsi的, 但是查阅资料都是使用aioredis, 所谓一步异步就得处处异步FastAPI官网关于异步的解释描述 https://fastapi.tiangolo.com/async/建议要使用FastAPI的人,都看看作者关于异步的描述思路把redis_cli对象挂载到FastAPI app 对象上面,然后在视图函数中使用默认的回调参数request对象获取参考链接https://github.com/tiangolo/fastapi
2020-07-29 16:42:45 9467 10
原创 【FastAPI后台API 九】图片文件上传
图片文件上传接收上传图片字节流数据,本地保存这个就没什么难度了,照着官网来就行了。有一点要主注意,文档看仔细。文档地址安装依赖pip install python-multipart代码import osimport shutilfrom pathlib import Pathfrom typing import Union, Anyfrom tempfile import NamedTemporaryFilefrom fastapi import APIRouter, Dep
2020-07-28 23:57:39 5231
原创 【FastAPI后台API 八】JWT token认证登陆
JWT token认证登陆前一篇博客讲述了获取和验证请求参数, 这一篇就实践下,演示一个最基础的JWT认证,我公司是用了两个token方式验证,一个请求token,一个刷新token,请求token过期时间短,专门用于请求数据,刷新token专门用于刷新过期请求token用的。jwt官网 https://jwt.io/如果还有不懂JWT的,就需要好好看看JWT的知识了,JWT认证目前是前后端分离中非常流行的一种认证方式: 由三段组成 第一段通常是加密算法,第二段是你存储的自定义信息(未加密任何人
2020-07-23 21:40:04 8988 5
原创 【FastAPI后台API 七】GET和POST请求参数接收以及验证
FastAPI http请求参数的接收我最开始接触FastAPI的时候,最搞不懂的就是POST方式是如何接收参数的。GET方式的参数GET方式的参数有两种,一种是路径参数,一种是查询参数。举个例子来说明两者的区别路径参数 官方文档 https://fastapi.tiangolo.com/tutorial/path-params/from fastapi import FastAPIapp = FastAPI()@app.get("/items/{item_id}")async
2020-07-22 23:55:04 53833 3
原创 【FastAPI后台API 六】异常处理
异常处理统一捕获处理异常,使得代码更加完善,健壮。框架内置了一些异常,当然也可以自己定义异常然后捕获处理。完全可以参考官网(超喜欢这种风格的文档):https://fastapi.tiangolo.com/tutorial/handling-errors/异常捕获在FastAPI中,最常见的就是请求参数验证异常处理,因为FastAPI全面使用了`pydantic`来做数据类型校验,所以最常见的异常就是`ValidationError` , 然后FastAPI继承了这个错误,专门捕获
2020-07-15 22:07:47 3002
原创 【FastAPI后台API 五】统一响应json数据格式
统一响应json数据格式现在了很多项目,都是前后端分离的项目,所以了前后端都会约定传输的数据格式,以及响应提醒。响应json格式现在应该都是使用的json交互了,应该没有使用xml的吧?一般了响应json格式是由以下三个字段组成。{ "code": 200, // 统一成功状态码 前后端约定 有的是0 有的是20000 "data": xxx, // 可以是任意类型数据 有接口文档对接 "message": "success" // 消息提示,是状态码的简要补充说明}前端一般
2020-07-15 22:04:43 5515 3
原创 【FastAPI后台API 四】 FastAPI 日志配置
FastAPI 中日志的配置本系列博客是配合Vue开发一套后台管理系统,对应的Vue教程见个人博客https://www.charmcode.cn/在Python中内置了logging模块, 但是配置有丢丢麻烦。于是有人开发了这样的一个日志扩展库loguru我很喜话它 Github地址 https://github.com/Delgan/loguruloguru 使用自己看官网http://loguru.readthedocs.io/或者GitHub README.md的演示,基本就够了
2020-07-12 17:05:57 7774
原创 【FastAPI后台API 三】 FastAPI SqlAlchemy MySql表迁移
FastAPI SqlAlchemy MySql表迁移FastAPI项目官网是直接使用的SqlAlchemy ORM,不像Flask,一般使用Flask-SqlAlchemy扩展,习惯了flask扩展的,没使用 SqlAlchemy,虽然大体上很像,但是有些地方还是不一样的。SqlAlchemy官方本身就是使用alembic实现表迁移的,所以现在直接用这个。官网 https://alembic.sqlalchemy.org/en/latest/alembic 初始化先安装alembicpip
2020-07-12 16:41:45 6189 2
原创 【FastAPI后台API 二】SqlAlchemy Model模型类
FastAPI SqlAlchemy ORM ModelFastAPI 使用 SqlAlchemy创建models文件目录| |____db // 数据库文件夹| | |______init__.py| | |____session.py // 创建 SessionLocal 对象| | |____base_class.py // model基础模块 如通用字段| | |____base.py
2020-07-11 19:22:03 2137
原创 【FastAPI后台API 一】配置文件(移步博客园或个人网站)
FastAPI 配置文件配置文件目录|____core // 项目存放一些重要的文件| |______init__.py| |____config // 配置文件夹| | |______init__.py // 根据虚拟环境导入不同配置| | |____development_config.py // 开发配置| | |____production_config.py //
2020-07-11 17:32:50 3398 1
原创 个人博客 Django 评论模块开发总结【四】JavaScript逻辑,请求渲染校验数据
JavaScript逻辑,请求渲染校验数据个人网站开通评论了 https://www.charmcode.cn/article/2020-07-09_Comment欢迎评论交流思路分析首先得理清楚,需要做那些功能确定是否登录(通过cookie 存储的用户信息判断)用户输入内容校验,以及提示用户输入字数,涉及到防抖函数请求评论数据,然后渲染数据列表(目前不考虑做分页)添加评论数据,添加前先过滤数据,提交按钮防抖,提交后清空输入框并且给出接口回调提示,评论成功或者失败。...
2020-07-11 16:23:49 256
原创 个人博客 Django 评论模块开发总结【三】评论样式实现
评论样式实现本着练习技术的能力,索性就一套全部写完,css咱也会。多写多练就不怕那玩意。虽然个人博客是扒的这个 博客主题 https://github.com/blinkfox/hexo-theme-matery但是当时图省事,很多模块就直接省略了。这个博客详情页里面也有博客样式。地址 http://blinkfox.com/2018/11/24/ruan-jian-she-ji/ruan-jian-cheng-xu-she-ji-yuan-ze/#toc-heading-24同样也可以右键,把
2020-07-10 23:05:28 696
原创 个人博客 Django 评论模块开发总结【二】数据表以及接口设计
数据表以及接口设计写之前先理清楚思路,各个表之间的关系是怎么样子的。一个文章可以多个评论,一个用户也可以在一篇文章下评论多次所以了 主要设计三张表文章表用户表评论表 (包含用户id 文章id)Django orm model这里了首先使用了django model 外键关联1 文章表modelclass Article(models.Model): """ 文章 """ id = models.AutoField(primary_key=Tru
2020-07-10 22:46:48 553
原创 个人博客 Django 评论模块开发总结【一】Github第三方登陆
个人博客 评论模块开发总结个人网站开通评论了 https://www.charmcode.cn/article/2020-07-09_Comment欢迎评论个人博客使用Python Django框架开发, 以下博客总结都是以Django为演示,前端使用原生Js 加简单封装的fetch请求库 替换JQuery的ajax,布局用的flex。前言我看网上现在很多都是使用的 畅言 或者 Disqus 等等的插件,当然集成插件确实也方便轻松。但是,本着技术人员的热情,我还是想自己开发一下。其他自己开发
2020-07-09 23:38:52 427
原创 Vue封装Toast消息弹窗提示
Vue 封装Toast消息提示学习Vue的道路上,封装一些自定义的组件不可避免,今天就来封装一个Toast消息提示。后面还有dialog对话框,原理差不多。首先先看看效果图现在才知道用qq录制gif图是真方便。(非广告,后面会多用gif图)1 正常组件调用2 全局注册对象调用(不知道是不是叫这个名字)一 首先,我们先封装一个正常组件看看效果。1 首先创建一个最普通的组件/toast/Toast.vue 看看效果.<template> <div cla
2020-07-02 11:48:26 2267 1
原创 Nginx部署多个Vue项目
Nginx线上部署多个Vue项目(路径区分)nginx 多静态文件部署。我个人博客项目占用了nginx根路径,而我只有一个域名,也不准备用二级域名了, 所以就直接用路径区分开。一个域名,只部署一个静态文件服务,那很简单,只用把打包后文件放上去就行。多个Vue项目主要就是路径问题,静态js文件以及自定义的路由。原文请访问 我个人博客地址博客地址: https://www.charmcode.cn/article/2020-06-30_nginx_vue环境vue 2.6.11vue-r
2020-06-30 18:33:56 1668
原创 FastAPI 项目结构组织,工厂模式创建
FastAPI 项目结构组织,工厂模式创建前言学习Vue的时候,需要接口,而我恰巧也学习了下FastAPI,正好个人项目,试一下这个FastAPI框架。然而 现在关于FastAPI,搜索资料基本都是官网翻译一下,要么就是官方推荐的全栈项目生成https://github.com/tiangolo/full-stack-fastapi-postgresql, 对我目前的需求而言,太大了,而且全程用docker,对我这个初学FastAPI的新手来说很不友好。于是我自己花了点时间, 详细看了一遍文档。
2020-06-24 17:28:39 3087 1
原创 JavaScript ajax 代替请求库 fetch简单封装
js 请求库简单封装前言以前一直用JQuery的 ajax 请求,感觉哪玩意真不好用,后面发现有fetch这个http请求库,于是自己尝试封装看看。参考 https://developer.mozilla.org/zh-CN/docs/Web/API/Fetch_API/Using_Fetch封装代码可以先建一个 requests.js (Tip: Python requests )// 请求前缀urlconst baseUrl = "https://www.charmcode.cn
2020-06-22 14:30:39 572
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人