【完全开源】Django多人博客系统——支持MarkDown和tinyMce
目录
说明
这是一个用Django开发的多人博客系统,功能简单,但完全满足公司内部或个人的博客使用需求。支持普通富文本编辑器(tinyMCE)和MarkDown编辑器
由于嫌弃Django后台太难看,也无法满足个人开发时候的想法。于是自主开发了后台,未使用Django自带的admin模块。其中集成了Django的Auth模块,其他部分都重写了
由于本人前端不精,不愿意花费大量时间去写界面。所以博客前台界面参考了vmaig开源博客的界面。后台模块的界面参考了Bootstrap的metronic响应式模板
除此之外,还使用了python中著名的PIL图片处理模块来压缩图片,也使用了Django-tagging来处理博文标签
博客将会持续开发新功能,在现有基础上不断完善
功能
已实现:
- 多用户支持。每个用户有自己的后台
- 用户添加修改删除
- 用户头像切换,密码修改等功能
- 博文发布,删除,存为草稿
- 添加博文标签,添加博文到目录
- 编辑器切换(目前支持MarkDown和tinyMCE)
- 博文评论,可进行楼中楼评论
- 博文轮播
- 热门博文统计
- 用户发布博文统计
基本上就是实现了正常博客最基本的,应该有的功能
未实现:
- 不能进行目录管理,目前只能通过数据库直接添加目录
原因是个人认为目录应该在博客部署时,一次性添加完毕,在以后的使用中不能修改或者添加新的目录,所以未实现此功能
将实现:
- 博客编写时,本地自动保存
- 用户动态跟踪,展示用户使用博客的时间线
如何使用
需要安装的包:
django
django-tagging
pillow(该包为PIL的一个分支,目前pip和easy_install好像都无法下载安装PIL了)
MySQL-python(还有一个数据库驱动,我使用的是MySQL,你也可以使用其他驱动)
安装完成后,打开 zer0Blog/settings,修改其中的数据库配置。配置如下:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'zer0Blog',
'USER': 'lxtalx',
'PASSWORD': 'lxtalx',
'HOST': '10.0.3.13',
'PORT': '3306'
}
}
若使用MySQL,则需要修改 USER ,PASSWORD,HOST 和你想使用的数据库名 NAME。若使用其他数据库,还需要修改 `ENGINE'。熟悉 Django 的都知道怎么做,就不细说了
然后就是在项目根目录下输入 python manager.py makemigrations ,再输入 python manager.py migrate 生成数据库表。然后使用 python manager.py runserver 启动数据库即可。
一个要点:管理员账户必须使用 python manager.py createsuperuser 命令来创建
若要正式部署使用,建议使用 nginx+uwsgi 部署,可参考Nginx+uWSGI安装与配置
项目地址:github.com/zer0Black/zer0Blog
【完全开源】Django多人博客系统——支持MarkDown和tinyMce的更多相关文章
- Django:(博客系统)使用使用mysql数据->后台管理tag/post/category的配置
Django后台一般是不需要人为的去开发的,因为django已经通过配置实现哪些模块是后台需要管理,如何排序,列表展示哪些列,列显示名称,是否为空(默认值),过滤条件,分页页数,列表中哪些项可编辑等等 ...
- 四、Java多人博客系统-2.0版本
由于时间关系,多人博客系统这里穿插一个2.0版本. 2.0版本本来是打算用于建立个人网站,但是后来发现个人建站需要购买域名服务器,还需要备案,很繁琐.最终放弃.完成此版本,最终也只是作为技术演练.此版 ...
- 三、Java多人博客系统-技术架构
多人博客系统1.0版本,架构和技术还是很简单和很传统的. 1.技术 前端:jsp.html.css.javascript.jquery.easyui.echarts 后端:spring mvc.Hib ...
- Django快速搭建博客系统
Django快速搭建博客系统 一.开发环境 Windows 7(64bit) python 3.6 https://www.python.org/ Django 2.0 https://www. ...
- 一、Java多人博客系统-开篇
作为一个程序员,工作之外的不断学习是必须的.这个项目是我个人课外学习和练手的项目.最开始是一个个人网站.当时发现京东云可以免费部署网站的,就立即写了一个网站,当时就使用jsp技术,可以实现发布博客.评 ...
- 开源项目收集:博客系统solo
前言 一个好的项目,我不会吝啬于推荐之语.找了好久,想要一个最简单的个人博客.由于个人不怎么会写前端页面,怎么也看不到漂亮的设计.没有漂亮的前台都不知道后台需要写一些什么! 这个项目至少目前满足了我的 ...
- Django:(博客系统)使用使用mysql数据&创建post/category/tag实体,并同步到数据中
背景: 之前也读过一些关于django的一些书,看过别人写的一些博客系统.但是总有一种看别人的都会,但自己写不出来的感觉,于是为了加深对django的学习就开始动手学习了. 环境搭建: 环境:使用py ...
- 二、Java多人博客系统-演变
任何项目都是由小到大,逐步演变的.自己写的这个博客系统也不例外. 更新日志如下: 一.2014年底-2015年初 功能及技术: 1.定位为个人网站,介绍自己情况和发布文章等. 2.首页模块有:个人简介 ...
- Django实现的博客系统中使用富文本编辑器ckeditor
操作系统为OS X 10.9.2,Django为1.6.5. 1.下载和安装 1.1 安装 ckeditor 下载地址 https://github.com/shaunsephton/django-c ...
随机推荐
- 如何解决System.Web.HttpRequestValidationException的异常
在.net framework 4.0版本以下, 只需要在web.config中进行如下配置: <configuration> <system.web> & ...
- mysql深入浅出的笔记(存储过程一)
1.存储过程和函数.... 存储过程和函数是事先经过编译并存储在数据库中的一段SQL语句的集合,调用存储过程和函数可以简化应用开发人员的很多工作, 减少数据在数据库中和应用服务器之间的传说 ...
- Xcode最好用的日志打印方法
一般打印日志都是用的系统自带的NSLog来打印的,假如项目做完了,要上线了,这些打印的日志就会很浪费性能,网上有很多的解决办法,我也是感觉网上的还是有点不方便,所以就自己又修改了一下,分享给大家. 网 ...
- iOS 导出 ipa 包时 四个选项的意义
iOS 导出 ipa 包时 四个选项的意义 如图 在 iOS 到处 ipa包的时候 会有四个选项 1.Save for iOS App Store Deployment 保存到本地 准备上传App ...
- LeetCode 206 Reverse a singly linked list.
Reverse a singly linked list. Hint: A linked list can be reversed either iteratively or recursively. ...
- jQuery中的Ajax - Codeigniter版本
发送(view中): $.ajax({ type : 'post', url : 'add', data : { 'nickname':nickname, 'mobile':mobile, 'sex' ...
- 比较完整的WebView的用法
WebView, WebChromeClient和WebViewClient加载网页基本用法 webview是android中的浏览器控件,在一些手机应用中常会用到b/s模式去开发应用,这时webvi ...
- [UWP]创建自定义VisualState Trigger
这篇博客将介绍在UWP程序中如何创建和使用自定义VisualState Trigger. 上一篇博客中介绍了如何使用AdaptiveTrigger.目前UWP内置的StateTrigger只有Adap ...
- C++产生随机数
随机数 计算机的随机数都是由伪随机数,即是由小M多项式序列生成的,其中产生每个小序列都有一个初始值,即随机种子.(注意: 小M多项式序列的周期是65535,即每次利用一个随机种子生成的随机数的周期是6 ...
- 组合模式/composite模式/对象结构型模式
组合模式/composite模式/对象结构型 意图 将对象组合成树形结构以表示"整体--部分"的层次结构.Composite使得用户对单个对象和组合对象的使用具有一致性. 动机 C ...