专栏首页Python中文社区用Python搭建一个校园维基网站(一)

用Python搭建一个校园维基网站(一)

專 欄

treelakePython中文社区专栏作者

项目Github地址:

https://github.com/zr777/school-wiki

简述

  • 我们的目标是做一个校园维基站点,提供校园生活百科的内容服务。
  • 主要需求为
    1. 百科的搜索
    2. 百科的标签分类
    3. 人人皆可参与编辑
    4. 界面简洁大方直观
  • 其实有一个很好的技术选型,那就是开源的wikihow 英文中文,它的UI简洁不失美观,单维基页面的展示很清晰,而且是基于某种markdown语言的人人可修改。不过,它是基于mediaWiki,熟悉PHP的同学可以去尝试。
  • 对于Python而言,虽然没有现成的工具,但借助强大的Python开源社区,我们也可以很快地搭建起一个轻量级的校园百科网站。
  • Wagtail是一个基于Django的优秀CMS(内容管理系统)。有强大的Django社区做后盾,开发资源相当丰富。利用它我们可以轻松地搭建属于自己的内容发布网站。
  • Wagtail的后台管理界面漂亮而且强大,有良好的权限管理系统,页面、图片和文档的管理功能以及富文本编辑功能。在文本内容搜索上可以集成elasticsearch,非常方便。
  • 学习一个开源框架最好的方式就是去读它的官方文档 - wagtail。它的官方文档已经比较完善了,对新手友好,推荐阅读。
  • 由于单人开发而且业务逻辑比较简单明确,没有考虑前后端分离,而是利用django模板功能,在SEO方面有一定的优势。
  • 为了方便,前端样式选择了轻量的purecss框架,有现成的一些页面样式可以使用,而且比较符合个人审美。
  • 此外,由于之前的内容发布使用WordPress博客系统,需要导入原来的原生HTML内容,维基页面要兼容原生html,所以目前游客的权限较低,修改后需要提交审核。markdown编辑功能暂时没有加上,不过有开源的插件,使用很方便。

效果图

移动端首页

PC端首页

标签页

搜索结果页面

PC端单维基页面

移动端单维基页面

帮助修改页面

帮助修改的富文本编辑与其他功能

Wagtail初体验

1、pip install wagtail安装库。

2、命令行输入wagtail start mysite开始我们的项目。

3、cd mysite进入项目目录。

4、python manage.py migrate数据库迁移 。

5、python manage.py createsuperuser创建管理员。

6、python manage.py runserver开始运行,就可以在http://127.0.0.1:8000看到你的第一个wagtail网页了。

本文分享自微信公众号 - Python中文社区(python-china),作者:treelake

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-04-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python网络爬虫实战项目大全,最后一个亮了

    wcspider [1]- 微信公众号爬虫。使用爬虫搜索所有微信公众号资料及其文章,通过搜狗搜索获取公众号的openid,创建公众号历史消息请求URL,解析出历...

    Python中文社区
  • 记一次惊心的网站TCP队列问题排查经历

    作者:刘晓明,互联网公司运维技术负责人,拥有10年的互联网开发和运维经验。一直致力于运维工具的开发和运维专家服务的推进,赋能开发,提高效能。

    Python中文社区
  • 100行代码爬取全国所有必胜客餐厅信息

    极客猴,热衷于 Python,目前擅长利用 Python 制作网络爬虫以及 Django 框架。

    Python中文社区
  • 「研究」分析语音搜索排名因素

    黄伟SEO
  • 保持简短和重点来优化语音搜索

    黄伟SEO
  • 初步总结页面间跳转动效

    最近一直在做交互规范总结的工作,在不断梳理页面间跳转逻辑的同时,发现页面间的逻辑关系并不能和页面间跳转的动效很好的结合上。虽然只是零点几秒的切换动效,却能在一定...

    前朝楚水
  • 个性化推荐沙龙 | 跨领域推荐,实现个性化服务的技术途径

    曹健,上海交通大学计算机系教授。近年来在大数据智能分析领域进行研究与应用。 一、跨领域推荐的概念 推荐系统在我们这个时代扮演了越来越重要的角色。如何利用海量数据...

    携程技术
  • 基于FPGA单级CIC滤波器实现8倍抽取

    在数字信号处理中,CIC滤波器是FIR滤波器中最优的一种,其使用了积分,梳状滤波器级联的方式。

    FPGA开源工作室
  • 独家 | 10 个简单小窍门带你提高Python数据分析速度(附代码)

    提示和技巧总是非常有用的,在编程领域更是如此。有时候,小小的黑科技可以节省你大量的时间和精力。一个小的快捷方式或附加组件有时会是天赐之物,可以成为实用的效率助推...

    数据派THU
  • 独家 | 10 个简单小窍门带你提高Python数据分析速度(附代码)

    提示和技巧总是非常有用的,在编程领域更是如此。有时候,小小的黑科技可以节省你大量的时间和精力。一个小的快捷方式或附加组件有时会是天赐之物,可以成为实用的效率助推...

    昱良

扫码关注云+社区

领取腾讯云代金券