【完全开源】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 ...
随机推荐
- 各种webservice调用地址
http://www.webxml.com.cn/zh_cn/web_services.aspx
- iOS 之UIButton左文右图
对于button,当添加了图片时,默认是左图右文的 '[self.pageViewsLB setImage:[UIImage imageNamed:@"read"] forStat ...
- sqlserver Between And的问题
Id Name RegisterDate 1 澎澎 2007/1/5 00:00:00 2 丁丁 2007/1/6 04:37:00 3 亞亞 2007/1/7 00:00:00 数据库的数据如上.若 ...
- php Your system does not support any of these drivers: gmagick,imagick,gd2
缺少这些库时,安装 : apt-get install php5-gd 就可以.
- 一个 Q-learning 算法的简明教程
本文是对 http://mnemstudio.org/path-finding-q-learning-tutorial.htm 的翻译,共分两部分,第一部分为中文翻译,第二部分为英文原文.翻译时为方便 ...
- html视频播放器的代码 及其参数详解
播放视频最实用的一段代码是: 程序代码 <"></embed></object> 其他的看参数自己修改吧 .avi格式 代码片断如下: 程序代码 < ...
- react native 中webview内的点击事件传到外部原生调用
先说一下我使用webview的时候遇到的一个功能需求 是这样的,上图中的这个页面是用h5做的,但是由于点击"我的优惠劵"是需要跳转到我原生的页面,也就是说我需要获得这个h5提供的点 ...
- h5容易遗忘的内容
1.表单中 input类型 小补充: 2.常用的表单元素 3.表单属性 4.表单事件 5.多媒体:音频和视频 5.1音频 5.2视频 6.Dom拓展
- Git在window的使用(TortoiseGit)之一
一.什么是Git? Git是分布式版本控制系统.它与SVN的主要区别:SVN在本地没有版本,不能脱机工作:Git是分布式控制系统,在自己的本地都有一个版本,可以脱机工作. 二.在window上安装Gi ...
- BaaS、IaaS、PaaS、SaaS
参考资料:http://www.zhihu.com/question/23048744