Skip to content

Dev-Engine/Dev_Blog2

This branch is 5 commits ahead of, 39 commits behind ScenK/Dev_Blog2:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
Scen.Kang
Jan 4, 2016
7fbbfb3 · Jan 4, 2016
Jan 7, 2014
Sep 9, 2013
Jan 2, 2014
Jan 7, 2014
Dec 27, 2013
Jan 7, 2014
Jan 4, 2016
Jan 2, 2014
Jan 2, 2014
Dec 27, 2013
Jan 28, 2014
May 27, 2013
Dec 28, 2013
Dec 26, 2013
Jan 3, 2014
Jul 24, 2013

Repository files navigation

Notice: A complete new version will coming soon! With tons of cooling features.

Info:Dev_Blog Python-Release Based On Flask, Tornado and MongoDB.
Repository:https://github.com/ScenK/Dev_Blog2
Author:Scen.K (http://tuzii.me).
License:MIT License.

文件目录结构:

Dev_Blog2/
    .
    ├── admin                                 后端Blueprint
    │   ├── __init__.py
    │   ├── admin.py                          后端Handler
    │   ├── static                            静态文件夹
    │   │   ├── css
    │   │   ├── images
    │   │   ├── js
    │   │   └── lib
    │   ├── templates                         页面文件夹
    │   │   └── admin
    ├── fabfile
    │   ├── __init__.py                       集成发布Fabric命令
    │   ├── redirector.py                     301跳转文件生成器
    │   └── dbmover.py                        博客版本数据库迁移助手
    ├── frontend                              前端Blueprint
    │   ├── __init__.py
    │   ├── frontend.py                       前端Handler
    │   ├── templates                         页面文件夹
    │   │   └── frontend
    ├── model
    │   ├── __init__.py
    │   └── models.py                         数据模型
    ├── static                                静态文件夹
    │   ├── css
    │   ├── less
    │   ├── images
    │   ├── js
    │   ├── lib
    │   ├── favicon.ico
    │   └── robots.txt
    ├── __init__.py
    ├── README.md                             帮助文件
    ├── requirements.txt                      Python基础安装包列表
    ├── runserver.py                          用来启动web服务器
    ├── yuicompressor.jar                     YUI js,css压缩器
    ├── config.py                             网站初始化设置文件
    └── utils                                 第三方及助手文件夹
        ├── __init__.py
        ├── email_util.py                     邮件发送器
        ├── helper                            助手文件夹
        │   ├── __init__.py
        │   ├── html_helper.py                html处理助手
        │   ├── re_helper.py                  正则表达式过滤助手
        │   └── upyun_helper.py               又拍云图片上传助手
        └── upyun.py                          又拍云SDK(v1.0)
  • 版本更替说明:

    本项目代码为dev_blog第一版制作并上线半年后重新开发而成

    第一版代码库地址:<https://github.com/ScenK/dev_blog/>

    在完成第一版本之后 在更多的对python的进一步认识的基础上 考虑到之前第一版继续开发的扩展性受到很大限制 于是开发第二个博客代码版本

    • 技术改进:
      • 第二个版本后端上仍然采用MongoDB作为数据库 但是增加了新的MongnEngine作为Orm 提供强大的model层
      • 网站从tornado搭建改为flask版本 而tornado退居后台 只进行作为非阻塞服务器使用
      • Admin后端放弃使用foundation的框架 而使用了一个全新的模版(colorful life)
      • Admin后端放弃使用Markdown的写作方式 而采用了wysiwyg编辑器
      • Admin后端放弃使用fineuploader图片上传组建 而采用uploadifive作为替代
      • 第一版数据结构优化
  • 版本迁移须知:

    第一版本的博客代码 使用一键数据库脚本(已集成在fab命令中)

    • 使用步骤:
      • config.py设置好目标数据库名称(避免跟原始数据库名称一致)
      • 备份导出原始数据库: fab backup_database
      • 导入数据库: mongorestore -d dev_blog --drop ~/mongobak/dev_blog
      • 执行迁移命令: fab dbmove
      • 等待脚本结束
    • 旧版url 301跳转生成新版:
      • fab g
      • 生成的redirect file放到nginx的配置目录下方
  • 安装须知:

    • 项目Wiki地址: (待完成)
    • 博客地址: <http://tuzii.me/>
    • 推荐使用独立VPS
      本博客线上环境: Amazon EC2 + Ubuntu12.04 + Python2.7.3 + Nginx + Tornado + MongoDB2.0.2
    • 基础环境:
      Linux + Tornado + Python + MongoDB
    • 可选环境:
      前端使用nginx做多线程反向代理
    • 基础环境配好后按照requirements.txt里列出的相关软件包装好
      推荐使用pip批量安装
    • 启动相关进程(MongoDB, Nginx, Tornado)
  • 安装简介(Ubuntu 12.04为例):

    • sudo apt-get install python-pip mongodb gcc openjdk-6-jre-headless lessc
    • cd ~/ dev_blog2/
    • sudo pip install -r requirements.txt
    • sudo pip install tornado
    • cd ~/dev-blog2/
      • 拷贝 Config/config.py.sample 到 Config/config.py 并更改网站相关设置
      • 执行fab build 进行初始化部属(此时会默认生成默认的后台管理员账户密码均为'admin' 请登录后自行修改)
      • 执行fab test 开启服务器进程(或者在Supervisor开启python多进程)
      • 每次改动的代码更新都可以使用fab update 进行服务端代码自动更新
  • 开发须知:

    • 遵循已有代码风格和文件夹风格 欢迎提pull request
    • MIT License.
  • 已知同项目, 不同前端风格的网站征集展示:

Do it yourself and make joy :)

About

Flask Blog. Powered by tornado and mongoDB

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • CSS 43.2%
  • JavaScript 32.7%
  • Python 15.8%
  • HTML 8.0%
  • Nginx 0.3%