目录

说明

这是一个用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的更多相关文章

  1. Django:(博客系统)使用使用mysql数据->后台管理tag/post/category的配置

    Django后台一般是不需要人为的去开发的,因为django已经通过配置实现哪些模块是后台需要管理,如何排序,列表展示哪些列,列显示名称,是否为空(默认值),过滤条件,分页页数,列表中哪些项可编辑等等 ...

  2. 四、Java多人博客系统-2.0版本

    由于时间关系,多人博客系统这里穿插一个2.0版本. 2.0版本本来是打算用于建立个人网站,但是后来发现个人建站需要购买域名服务器,还需要备案,很繁琐.最终放弃.完成此版本,最终也只是作为技术演练.此版 ...

  3. 三、Java多人博客系统-技术架构

    多人博客系统1.0版本,架构和技术还是很简单和很传统的. 1.技术 前端:jsp.html.css.javascript.jquery.easyui.echarts 后端:spring mvc.Hib ...

  4. Django快速搭建博客系统

    Django快速搭建博客系统 一.开发环境 Windows 7(64bit) python 3.6   https://www.python.org/ Django 2.0  https://www. ...

  5. 一、Java多人博客系统-开篇

    作为一个程序员,工作之外的不断学习是必须的.这个项目是我个人课外学习和练手的项目.最开始是一个个人网站.当时发现京东云可以免费部署网站的,就立即写了一个网站,当时就使用jsp技术,可以实现发布博客.评 ...

  6. 开源项目收集:博客系统solo

    前言 一个好的项目,我不会吝啬于推荐之语.找了好久,想要一个最简单的个人博客.由于个人不怎么会写前端页面,怎么也看不到漂亮的设计.没有漂亮的前台都不知道后台需要写一些什么! 这个项目至少目前满足了我的 ...

  7. Django:(博客系统)使用使用mysql数据&创建post/category/tag实体,并同步到数据中

    背景: 之前也读过一些关于django的一些书,看过别人写的一些博客系统.但是总有一种看别人的都会,但自己写不出来的感觉,于是为了加深对django的学习就开始动手学习了. 环境搭建: 环境:使用py ...

  8. 二、Java多人博客系统-演变

    任何项目都是由小到大,逐步演变的.自己写的这个博客系统也不例外. 更新日志如下: 一.2014年底-2015年初 功能及技术: 1.定位为个人网站,介绍自己情况和发布文章等. 2.首页模块有:个人简介 ...

  9. Django实现的博客系统中使用富文本编辑器ckeditor

    操作系统为OS X 10.9.2,Django为1.6.5. 1.下载和安装 1.1 安装 ckeditor 下载地址 https://github.com/shaunsephton/django-c ...

随机推荐

  1. curl的用法以及个人理解(php)

    php curl的个人理解 1.首先curl的官方解释为:curl是利用URL语法在命令行方式下工作的开源文件传输工具.{它只是一种传输工具!} 2.curl就是抓取网页的升级版本,支持POST.GE ...

  2. Linux面试知识点总结

    1.Linux关机重启命令: 在linux命令中reboot是重新启动,shutdown -r now是立即停止然后重新启动,都说他们两个是一样的,其实是有一定的区别的.    shutdown命令可 ...

  3. 《learning hard C#学习笔记》读书笔记(20)异步编程

      20.1 什么是异步编程异步编程就是把耗时的操作放进一个单独的线程中进行处理. 20.2 同步方式存在的问题   namespace 异步编程 { public partial class For ...

  4. 使用Docker搭建Java Web运行环境

    这周末体验了一下挺火的Docker技术,记录学习笔记. >Docker是干什么的 Docker 是一个基于Linux容器(LXC-linux container)的高级容器引擎,基于go语言开发 ...

  5. 控制台查看原生sql

    情况:当tomcat运行时,项目运行过程中,控制台没有打印出原生sql语句: 解决办法如下: 在 META-INF  文件夹下,查找 persistence.xml 这个文件(这里注意可能一个项目不止 ...

  6. Scrapy框架实现爬虫

    实战中的遇到的问题总结: 1.

  7. ThreadLocal内部机制及使用方法

    一.介绍ThreadLocal内部机制之前,先简单说明一下其特点及用途: 1.ThreadLocal是单线程内共享资源,多线程间无法共享(即线程A访问不了线程B中ThreadLocal存放的值): 2 ...

  8. fragment+viepager 的简单暴力的切换方式

    这里是自定义了一个方法来获取viewpager private static ViewPager viewPager; public static ViewPager getMyViewPager() ...

  9. html5吹牛扯淡篇,闲话内容。

    09年提出对媒体查询的草案,到今天的广泛运用,w3c带我们走进了个性化定制的殿堂.这些之所以会被认可会被写进世界级标准,因为他越来越适应广大用户的需求,需求就像一条锁链带动或者牵引整个互联网开发工作. ...

  10. C# 解析JSON的几种办法

    欲成为海洋大师,必知晓海中每一滴水的真名. 刚开始只是想找一个转换JSON数组的方法,结果在MSDN翻到一大把. 搜索过程中免不了碰到一大堆名词:WCF => DataContract => ...