flask 开发的正确姿势是什么?

2016-08-12 10:53:50 +08:00
 lavande

我在搞一个小项目,现学现卖,基于 flask 写的,但是感觉做法很不专业,应该怎样提高效率呢? 现在的做法是: ssh 登录服务器, nano 打开一个 py 文件,敲代码,保存退出, flask 运行代码,打开网页观察,出错之后重复以上步骤修改…… 感觉很不对!

9893 次点击
所在节点    Flask
50 条回复
HypoChen
2016-08-12 10:58:00 +08:00
你是问 flask 怎么用还是怎么开发- -

最简单的就是用 ide 比如 pycharm ,然后本地 debug ,本地搞得差不多再发布

不过话说少年你很有线上 debug 的潜质啊
wbolor
2016-08-12 11:04:43 +08:00
简单点就使用 git , 本地在一个分支开发, 线上 master 分支,部署的时候拉 master 分支代码就好了。。。
yh7gdiaYW
2016-08-12 11:05:57 +08:00
推荐先本地用 pycharm ,自带 flask 支持(比如进入 templates 的 html 页可以提示你传进来的变量)。然后 push 到 git 上,例如 github&coding 。最后 ssh 到你的服务器里 checkout&pull
yh7gdiaYW
2016-08-12 11:07:46 +08:00
(不过我更喜欢本地写完后, xftp 直接复制过去)
svenFeng
2016-08-12 11:07:55 +08:00
先本地开发,觉得可行之后,然后发布上服务器,另,学学 vim/Emacs ,在服务器端其实挺方便的
incesa
2016-08-12 11:13:10 +08:00
@yh7gdiaYW 开是我也这样 后代代码修改的次数多了 就乱套了
Kilerd
2016-08-12 11:19:43 +08:00
兄弟,你的姿势很优雅。

讲道理,你的开发姿势完全错了吧。

首先你要有一个编辑器 /ide 。 本地用 virtualenv 隔离 python 包(可有可无,建议用上)

本地创建 flask 工程。 用 `app.run(debug=True)` 启动内置调试服务器(当你修改 py 文件,工程会自动重新加载。)

在本地 修改 /编写 /调试 好项目之后, 再推送到服务器上去

推送方式 git / ftp / 手动复制 随便选。

服务器部署的话,可以用上 docker. 不会的话可以直接用 nginx + flask + gunicorn
troywinter
2016-08-12 11:42:17 +08:00
在服务器上开发的话,多开几个 ssh session 就行了,这边改代码保存,那边运行,不用这么麻烦的来回切换。
cxh116
2016-08-12 11:48:18 +08:00
你再只需要一个 tmux 就可以了
zhuangzhuang1988
2016-08-12 12:21:36 +08:00
服务器上开发
大哥, 你牛..
g0thic
2016-08-12 12:25:44 +08:00
大兄弟你是运维出身的吧
akring
2016-08-12 12:37:56 +08:00
搭车同问 Scrapy 爬虫如何部署到 VPS 上?
vinan143
2016-08-12 12:48:21 +08:00
服务器上还用 nano 的都是高手中的高手
masterzh01
2016-08-12 13:02:57 +08:00
vim + git
SlipStupig
2016-08-12 13:30:26 +08:00
@akring web hook+corntab
akring
2016-08-12 13:31:47 +08:00
@SlipStupig 多谢!
alittletrain
2016-08-12 13:36:13 +08:00
pycharm 可以直接在远程服务器上获取 /拉取文件, 你修改后可以自动上传到服务器上,注意(这是非 GIT 的方式),不过好在 pycharm 在本地有历史记录。
同理 phpstorm
guyskk
2016-08-12 13:40:29 +08:00
7 楼正解
likuku
2016-08-12 13:52:16 +08:00
nano 。。。第一次登录服务器就是卸载 nano
ericls
2016-08-12 13:54:21 +08:00
第一步 git init
第二步 vim tests.py

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/298821

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX