头图

最近我在为 openEuler 社区添加一个 FAQ 模块, 这一系列正是我在这一过程中的总结

全部内容: 如何编写一个 Python Web 应用(零)


下面的内容, 是一些我发现的提升效率的技巧

一般来说,我们 Web 应用的生产环境都是 Linux,比如我这次被要求尽量使用 openEuler 环境开发。但很多人的开发环境都是 Windows。而 PowerShell 实际上正如其名,非常强大。这里将涉及一些基本的 PowerShell 指令语法

自动逆向工程

前面提到逆向工程代码生成的指令为:

(前文链接)

PS D:\my\flask\app> (.\venv\Scripts\Activate.ps1) ;((flask-sqlacodegen mysql://root:123456@localhost:3306/openeuler_faq --flask) -replace 'db = SQLAlchemy\(\)','from faq import db' -replace 'from flask_sqlalchemy import SQLAlchemy','' | out-file faq/models.py -encoding utf8)

这一 PowerShell 中 ; 代表指令顺序执行, 相当于 && (Linux). 前半部分先进入项目的虚拟环境, 然后在执行生成.

-replace 对生成内容做了替换. out-fule 指定了输出文件名, 同时规定了编码: utf-8

PS:

  • 这里的 -replace 相当于 Linux 中 sed 的替换功能. 详细介绍
  • -encoding utf8 是非常有必要的, 比如在我的系统中, 默认输出的为 utf16

自动更新配置文件

pip 通过 requirements.txt 指定了程序所有的依赖, 而 pip freeze 指令可以输出当前全部的依赖

完整代码:

(.\venv\Scripts\Activate.ps1) ; (python -m pip freeze > requirements.txt)

Pycharm run/debug configurations

依次点击:

添加一个 shell script, 将指令粘贴到标注位置即可


Petrickstar
4 声望1 粉丝

不想单纯只会编码。。