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

最近文章

  • 开源 Kotlin ORM 框架 Exposed 使用说明 Exposed 是 JetBrains 在数年前推出的轻量级 ORM 框架,Kotlin 编写,已经在 JetBrains 内部多个关键产品使用。
  • Open WebUI 基于网页的大语言交互界面及联网搜索配置 之前的视频也介绍过,ChatWise,Cherry Studio,Chatbox 等大语言模型调用的本地客户端,虽然这些客户端都还是跨平台的,但是总还是需要占用本地的空间,今天我就来介绍一款基于网页的 LLM 交互客户端 Open WebUI,以及再介绍一下如何配置 Open WebUI 让其支持联网搜索。
  • 多版本管理工具 mise 使用详解 我用了很多年的 asdf 作为管理各种语言版本的工具,但是最近一次更新,asdf 多了一些变化,我也写了一篇文章介绍怎么升级的。在文章下方有小伙伴(lonelyhentxi) 给我推荐了 mise 这样一款使用 Rust 编写的多版本管理工具 mise,我大致的看了一下 mise,觉得是一个非常不错的项目,在这里再次感谢。
  • 搭建 Joplin 同步服务器 在我的博客上很久之前我介绍过 Joplin,不过我自己只在 Linux,Android 上用过一段时间,后来出现了 Obsidian ,就切换到 Obsidian 了,但是最近看到一篇文章介绍了如何自建一个 Joplin 同步服务器,这样就可以直接无缝地进行同步数据了。之前 Joplin 只是开放了 [[WebDAV]] 协议的访问协议用可以用来同步。
  • 从 Java 到 Kotlin Kotlin 和 Java 作为 JVM 生态中两大主流编程语言,在语法特性、开发效率和适用场景上存在显著差异。Kotlin 凭借现代化设计解决了 Java 的许多痛点,而 Java 凭借成熟生态和广泛支持仍是企业级开发的主力。