Flask 上传文件

Flask 处理上传的文件非常简单,总结归纳可以分为三步: 使用 <form> 标签被标记有 enctype=multipart/form-data ,并且在里面包含一个 <input type=file> 标签 服务端通过请求对象上的 files 字典访问文件 使用文件的 save() 方法将文件永久地保存在文件系统上的某处 假设将上传的文件存放在 static/uploads 目录中。 werkzeug 库可以判断文件名是否安全,例如防止文件名是 /../test.png, 安装 pip install Read more ...

2017-07-27 flask , web , python , linux

Flask restful

使用 JSON 作为交换格式 处理 JSON 时,请求和响应头的 Content-Type 设置为 application/json 。 from flask import Flask, request, Response import json app = Flask(__name__) @app.route('/json', methods=['POST']) def my_json(): print request.headers print request.json rt = {'info':'hello '+request.json Read more ...

2017-07-27 linux , flask , json , restful , web , python

Flask 使用介绍

Flask 是一个轻量级的基于 python 的 web 框架。 安装运行 一般情况下,只要通过 pip 安装 Flask 即可: pip install Flask 进入 python shell >>> import flask >>> print flask.__doc__ flask ~~~~~ A microframework based on Werkzeug. It's extensively documented and follows best practice patterns Read more ...

2017-07-27 python , web , flask , django

Flask cookie and session

因为 HTTP 协议是无状态的,服务器不知道用户上一次做了什么,这阻碍了交互式 Web 应用程序的实现,所以引入了 Cookie 和 Session,用来记录用户的状态。 要记住的一点是 Session 是服务端记录状态,而 Cookie 是客户端记录状态。 对于一个分布式应用来说服务端记录状态会涉及到大量的成本。 session from flask import Flask, render_template_string, \ session, request, redirect, url_for app = Flask(__name__) Read more ...

2017-07-27 flask , web , python

北京租房所思所想

毕业面临人生第一次租房,而到现在从学校搬出来也已经有近一个月时间,期间工作有些繁忙,而有一些租房相关的笔记一直躺在WizNote中,直到今天回到家,才想到应该把我的经历记下来,提醒自己以后租房过程中避坑。 信息来源 现在的社会是一个信息为主的社会,我们经常挂在嘴边说的一句话就是信息不对称能够产生利益,现在社会很多的金钱交易都是基于信息的不对称。而租房信息获取的途径也会直接导致以后一年的住房条件和心情。下面就讲讲我参考的几个主要站点和App。 自如 首先就是自如,也是我周围同学使用最多的,大多数周围的同学都通过自如找到了房子,我也看过一些自如的房子, Read more ...

2017-07-25 租房 , 合租 , 生活 , living

MySQL 中 KEY vs PRIMARY KEY vs UNIQUE KEY vs INDEX 的区别

对于标题中提出的问题,可以拆分来一步步解决。先来区分 MySQL 中的 KEY 和 INDEX ,之后问题就可以简化为 PRIMARY KEY,UNIQUE KEY 和 INDEX 的区别。而这三者也正好是索引的划分,主键索引,唯一索引和普通索引(INDEX)。 INDEX 可以用来提高数据库中查询数据的速度。INDEX 通常加在那些 JOIN, WHERE,和 ORDER BY 子句的列上。创建索引时,需要确保该索引是应用在 SQL 查询语句的条件(一般作为 WHERE 子句的条件)。实际上,索引也是一张表,该表保存了主键与索引字段,并指向实体表的记 Read more ...

2017-07-24 mysql , linux , key , index

树莓派中安装MySQL 5.7

最近用到 MySQL 5.7 把所有设备上的 MySQL 版本都升级到了最新,在 Ubuntu/Debian 上升级MySQL 5.7 的内容可以在之前的文章看到。现在记录一下树莓派中升级 MySQL 的步骤。使用到 MySQL 5.7 主要也是因为其支持的新数据类型,之前项目用到了,迁移的时候会遇到问题。在网上寻找解决方案的时候遇到了一个和我遭遇差不多的,需要使用到 MySQL 5.7+ 才支持的 JSON data-type。 在 respberry pi 官方的源中,只有稳定版的 5.5 MySQL,如果要用到最新的版本只能够自己手动编译更新安装 Read more ...

2017-07-23 MySQL , Linux , RespberryPi

每天学习一个命令:使用 rsync 增量同步备份文件

rsync 全名 Remote Sync,是类 UNIX 系统下的数据镜像备份工具。可以方便的实现本地,远程备份,rsync 提供了丰富的选项来控制其行为。rsync 优于其他工具的重要一点就是支持增量备份。 rsync - a fast, versatile, remote (and local) file-copying tool rsync 是一个功能非常强大的工具,其命令也有很多功能选项,它的特性如下: 可以保持文件原来的权限、时间、所有者、组信息、软硬链接等等 可以从远程或者本地镜像保存整个目录树和文件系统 无须特殊 Read more ...

2017-07-22 linux , rsync , scp , sync , command

终端复用工具 Tmux 使用介绍

Tmux 是一个很棒的终端复用工具,和 screen 命令类似,但是 Tmux 终极的分屏功能要比 screen 强大很多,当然入门也比 screen 要高很多。如果你长时间在终端进行编程或者操作,或者你陷入无数的 Tab 而无法自拔,那么你应该需要开始了解一些 Tmux 的基本使用。 本文会从如下几个方面对 Tmux 进行介绍: Tmux 基本使用 Tmux 的基本模块 Windows Panes Sessions Tmux 主要包括以下几个模块: session Read more ...

2017-07-21 tmux , linux , command , screen , terminal

将 MySQL 升级到 5.7

这些天折腾 Django 的时候用到了 MySQL,然而本地和VPS 上使用的版本不一致,本地使用了 5.7 版本,而 VPS 上使用了 5.5 的老版本,在数据迁移的时候遇到了 5.5 版本下不支持 DATETIME(6) 这样的数据类型。 DATETIME(6) 用来保存精确到微秒的时间。 环境: 系统:Debian 7, 按道理 Ubuntu/Debian 系应该都可以 无奈只能升级 MySQL 到 5.7 , 结果也比较顺利,官方有很详细 的升级说明: wget http://dev.mysql.com/get/mysql-apt-con Read more ...

2017-07-20 MySQL , Linux

最近文章

  • 关于习惯养成和打破的科学 昨天,花了半天的时间去听了 Andrew Huberman 的一个 YouTube 视频 —- The Science of Making & Breaking Habits,主要讲的是从神经科学结合心理学的角度,探讨了习惯的形成和破除机制,并且 Huberman 教授提供了多项实用的工具来帮助我们培养习惯以及破除我们不希望的习惯。
  • Rancher 中创建 K3s 集群 CA 检查报错解决方案 在之前的文章中遗留下来一些没有解决的问题,当时只是记录了一下, 后来因为只使用了 local 集群就没有继续调查,现在想要创建 K3s 集群的时候再次遇到了类似的问题。
  • LingQ:通过可理解输入学习语言 之前有写过一篇文章,大致地总结了一下自己关于Duolingo的一些想法,前段时间在打卡了 800 天之后,把 Duolingo 中的英语韩语和日语全部通关到了最后只能每天重复,所以发了一个推特帖子想要寻找一下比 Duolingo 更深度一些,每天可以坚持记忆一些语言支持的「工具」。我个人非常不喜欢直接拿一个背单词应用就开始背诵的方式,虽然我承认只要长期坚持还是会有一定的效果,但是一方面是效率很低,背过的单词不容易被想起来,另外一方面也是单纯的背单词非常的无聊。我也尝试过在浏览网页的时候将生词存放到 Anki 中,然后定期回顾,但是单词脱离了上下文,总是感觉还是像是在一个个过单词,我在之前的文章中介绍过 Comprehensible Input (可理解输入),但实际上自己一直没有好好地践行,看过一些日剧,日综,但是现在还是韩剧/韩综看得更多,在日常生活中英文的材料看得更多,日文的内容输入相对就比较少,也尝试过找一些日语的播客,但是以我现在的水平,最基础的都有一些费力的情况下,还是没有达到可以收听日语播客的程度。所以,这段时间我就是一直在没有找到比 Duolingo 更好的,又能够随时随地可以拿出来打个卡的服务,直到我看到了 LingQ,第一次注意到 LingQ 还是在 GitHub 中看到一个仓库是将 NHK Easy News 导入到 LingQ,隔天我就又看到一位朋友也在推荐 LingQ 作为沉浸式阅读工具,所以我就决定好好来研究一个这个工具。
  • Amazon 推出 Kiro AI IDE 新一代 AI 辅助集成开发环境 在 AI 辅助代码生成领域,从来不缺竞争者,现在 Amazon 正式加入了战争推出 Kiro AI IDE,Amazon 在之前就推出过智能助手 Amazon Q,以及代码补全插件 CodeWhisperer,但是在激烈的代码生成领域依然没有竞争过 Cursor,Windsurf,Claude Code 等一众的领跑者,甚至声量都没超过 Gemini CLI。现在推出的 Kiro 是一个集成的开发环境,至此互联网巨头中除了苹果没有推出 AI 辅助编码的工具之外所有的公司都已经有了对应的产品。
  • SuperClaude 让 Claude Code 更专业更顺手 SuperClaude 是一个 开源的 Claude Code 增强工具,提供了额外的命令,人物角色(Personas),以及更好的 MCP 服务集成。

赞助