Cuneiform 运行在 Python 3 上,依赖 flask、Markdown 以及 LeanCloud Python SDK。
Cuneiform 是一个 LeanCloud 应用。在部署上线之前,需要先做一些准备工作。
- 在 LeanCloud 控制台 新建一个应用,并设置一个二级域名。
- 在控制台中新增一个名为
FLASK_SECRET_KEY
的环境变量。(关于如何创建一个好的密钥,请参考 这个 gist) - 安装最新版的 LeanCloud 命令行工具。如果你无法访问 GitHub,请移步 国内镜像。
首先将 Cuneiform 的代码克隆到本地。在终端中打开项目所在目录,输入 lean login
,然后 lean checkout
,根据提示操作,就可以将本地的项目与刚刚在 LeanCloud 上创建的应用链接起来。
使用 virtualenv 来为这个应用创建一个隔离的 Python 运行环境。激活虚拟环境,然后用 pip
来安装所需的依赖。
用 lean deploy
命令将代码部署到 LeanCloud 上。部署完成之后,就可以在浏览器中输入刚才设置的域名,打开线上运行的网站了。
简单来讲:
$ git clone https://github.com/nervouna/Cuneiform.git && cd Cuneiform
$ virtualenv venv --python=python3 && source venv/bin/activate
$ (venv) pip install -r requirements.txt
$ (venv) lean login
$ (venv) lean checkout
$ (venv) lean deploy
你可以在 LeanCloud 控制台 的数据管理中直接为 _User
表添加一条记录,输入用户名和密码即可。
在 LeanCloud 控制台 的数据管理一栏里查看数据。所有的帖子都存在 Post
表中,上传的图片在 _File
表,用户在 _User
表。
Cuneiform 用到了五张表:Post
、Tag
、TagPostMap
、_User
和 _File
。他们的用途分别如下:
Post
表保存文章信息,包括标题、内容、作者,以及通过 markdown 渲染后的内容;Tag
表保存标签信息;TagPostMap
表保存文章和标签的关系;_User
表是 LeanCloud 的默认表,保存的是作者的信息;_File
表是 LeanCloud 的默认表,保存上传的文件。
在本地调试,请使用 lean up
命令。
- License: WTFPL
- Author: GUAN Xiaoyu (guanxy@me.com)