【完全开源】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 ...
随机推荐
- SQL Server删除重复行的6个方法
SQL Server删除重复行是我们最常见的操作之一,下面就为您介绍六种适合不同情况的SQL Server删除重复行的方法,供您参考. 1.如果有ID字段,就是具有唯一性的字段 delect ta ...
- C#Linq技术中SelectMany(...)的内部实现推测
对于声明为:public static IEnumerable<TResult> SelectMany<TSource, TResult>(this IEnumerable&l ...
- mongodb 启动脚本和配置
http://justcoding.iteye.com/blog/2270466 http://blog.csdn.net/neutrojan/article/details/32328531
- Python +crontab定时备份目录发送邮件
公司有一台静态页面展示服务器仅供给客户展示我们做的项目,当时买的时候是最低配,也就是磁盘空间为20G的系统盘,考虑到代码量很小所以没有另加磁盘,后来项目多了,就写了个crontab 定时备份目录. 就 ...
- 使用Word 2013发布cnblogs随笔
博客园支持Word或者OneNote一键发布文章. 获取cnblogs的URL地址,类似http://rpc.cnblogs.com/metaweblog/your_name 打开word中的管理账户 ...
- 第三十二篇:在SOUI2.0中像android一样使用资源
SOUI2.0之前,在SOUI中使用资源通常是直接使用这个资源的name(一个字符串)来引用.使用字符串的好处在于字符串能够表达这个资源的意义,因此使用字符串也是现代UI引擎常用的方式. 尽管直接使用 ...
- UWP学习记录2-设计和UI之布局
UWP学习记录2-设计和UI之布局 1.导航基础知识 应用里,多个页面会有层次关系或者对等关系.这两种关系,通常在一个复杂应用里都会存在,而关系的选定依据: 对于对等导航,一般用选项卡(tabs)或者 ...
- find命令与cat命令区别
在当前目录下查找 MEMBERINTERFACE 这个字符串的文件find . -name '*'|xargs grep "MEMBERINTERFACE"find / -name ...
- php.exe php-cgi.exe php-win.exe的区别
php.exe(linux下是php/bin/php)是提供来在命令行(命令行解释器)执行PHP文件的工具,比如你在有文件abc.php,那么你可以在CMD命令提示符下执行命令php.exe abc. ...
- 1.Android 视图及View绘制分析笔记之setContentView
自从1983年第一台图形用户界面的个人电脑问世以来,几乎所有的PC操作系统都支持可视化操作,Android也不例外.对于所有Android Developer来说,我们接触最多的控件就是View.通常 ...