LBForum Python论坛系统开源项目

我要开发同款
匿名用户2010年03月27日
33阅读
开发技术Python
所属分类建站系统、论坛系统BBS
授权协议BSD

作品详情

LBForum用django开发的论坛系统,演示地址为:https://vik.haoluobo.com/lbforum/,界面部分抄的FluxBB(一个开源的PHP论坛https://fluxbb.org/)。虽然Django写的论坛也不少,不过还真没什么好用的。大多Django论坛都是独立的app,而且不少还缺模板,想我这样有经验的Django用户要跑起来都觉得麻烦,其他普通用户就更别说了。LBForum主要注重部署的方便性和易用性,功能方面目前还比较简单。LBForum一开始就是以整站的形式提供,所以以LBForum做为基础项目进行二次开发是很容易的。同时LBForum的开发尽量遵照Django可复用app原则,因此即使需要将LBForum做为独立的app集成到其他项目也并不会太难。

主要功能

目前功能还比较简单,而且还有些小问题有待修正。

论坛分类,分版块发帖,回帖BBCode支持置顶贴使用djangoadmin提供论坛管理功能用开发服务器把LBForum跑起来先把代码down下来。LBForum托管在github上,https://github.com/vicalloy/LBForum。如果你没有安装git,你可以直接用界面右上方的downloadsource功能下载代码。运行\scripts\create_lbforum_env.py初始化lbforum的python虚拟环境。该脚本会自动创建一个python的虚拟环境并使用easy_install安装对应的依赖包,同时将一些依赖包解压到对应的目录中。注:django使用的是svn版本,所以机器上必须要安装有SVN,不然脚本会运行失败。如果因为由于svn的问题导致脚本运行失败,可以运行lbforum_env.bat进入lbforum环境,手动安装django的svn版本。环境初始化好后,运行lbforum_env.bat进入lbforum环境运行%mg%syncdb初始化数据库运行%mg%runserver启动django开发服务器进入admin,创建论坛分类和版块进入版块发帖LBForum的目录结构说明

|+lbforum_env/#lbforum运行的python虚拟环境,运行create_lbforum_env.py后自动创建|+requirements/#lbforum用的第三方库和app,运行的时候会将该目录加到python路径|~scripts/#工程相关脚本||-create_lbforum_env.py#初始化python虚拟环境,并自动安装easy_install/django依赖库||-helper.py#提供其他脚本所需的辅助函数|`-lbforum_env.bat*#启动lbforum运行的虚拟环境及,并为lbforum的manage.py提供快捷方式%mg%,比如初始化数据库%mg%syncdb|~sites/#站点配置/模板/静态文件|`~default/#默认站点|  |+static/#静态资源文件,如css等|  |+templates/#Django模板目录|  |+templates_plus/#Django模板目录,用户将自己重写过的目标放到该目录|  `-……|~src/#django的app目录||+account/#account相关app。具体站点通常会对用户中心进行定制,所以该app在实际应用中很可能需要针对实际情况进行修改。||+djangohelper/#一些django的辅助函数等,||+lbforum/#lbforum的主app,论坛功能都在改app中||+lbregistration/#registrationapp的lbforum扩展,主要去掉邮件地址认证功能||+onlineuser/#显示在线用户的app(可复用的djangoapp,可脱离lbforum单独使用)|`+simpleavatar/#头像功能的app(可复用的djangoapp,可脱离lbforum单独使用,依赖djangohelper)|+tools/#工程用到的辅助工具,目前只有一个virtualenv的脚本

注:由于计划在以后做i18n,所以目前只提供英文界面django的错误提示是显示在字段后面,fluxbb的错误全部都显示在表单前面。由于模板没有调好,所以目前按照fluxbb的方式显示错误,所以错误显示有些不太正常。bbcode的输入框本想做成自适应大小的,不过也调得有些问题,所以现在输入框的大小固定。文档…,感觉好难写-_-,目前文档不全(项目中没有带任何的文档),日后补上。应用程序的目录结构主要查看pinaxsimpleavatar模块部分代码来自django-avatar依赖包除用easy_install在线安装的外,尽量使用zip包的方式附带在项目中,减少安装依赖包的困难。远程部署脚本计划使用fabric,但fabric本身安装比较麻烦,所暂未处理。项目最早放在googlecode,不过感觉github的功能更强些,所以移了过去。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论