LBForum 用django开发的论坛系统,演示地址为:http://vik.haoluobo.com/lbforum/ ,界面部分抄的 FluxBB(一个开源的PHP论坛 http://fluxbb.org/ )。 虽然Django写的论坛也不少,不过还真没什么好用的。 大多Django论坛都是独立的app,而且不少还 缺模板,想我这样有经验的Django用户要跑起来都觉得麻烦,其他普通用户就更别说了。 LBForum主要注重部署的方便性和易用 性,功能方面目前还比较简单。 LBForum一开始就是以整站的形式提供,所以以LBForum做为基础项目进行二次开发是很容易的。 同时LBForum的开发尽量遵照Django可复用app原则,因此即使需要将LBForum做为独立的app集成到其他项目也并不 会太难。
目前功能还比较简单,而且还有些小问题有待修正。
先把代码down下来。LBForum托管在github上,http://github.com/vicalloy/LBForum 。如果你没有安装git,你可以直接用界面右上方的download source功能下载代码。
运行\scripts\create_lbforum_env.py初始化lbforum的python虚拟环境。该脚本会自动创建一个 python的虚拟环境并使用easy_install安装对应的依赖包,同时将一些依赖包解压到对应的目录中。 注:django使 用的是svn版本,所以机器上必须要安装有SVN,不然脚本会运行失败。如果因为由于svn的问题导致脚本运行失败,可以运行 lbforum_env.bat进入lbforum环境,手动安装django的svn版本。
环境初始化好后,运行lbforum_env.bat进入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/#registration app的lbforum扩展,主要去掉邮件地址认证功能 | |+onlineuser/#显示在线用户的app(可复用的django app,可脱离lbforum单独使用) |+simpleavatar/#头像功能的app(可复用的django app,可脱离lbforum单独使用,依赖djangohelper) |+tools/#工程用到的辅助工具,目前只有一个virtualenv的脚本
-lbforum_env.bat*#启动lbforum运行的虚拟环境及,并为lbforum的manage.py提供快捷方式%mg%,比如初始化 数据库%mg% syncdb |~sites/#站点配置/模板/静态文件 |
-…… |~src/#django 的app目录 | |+account/#account相关app。具体站点通常会对用户中心进行定制,所以该app在实际应用中很可能需要针对实际情况进行修改。 | |+djangohelper/#一些django的辅助函数等, | |+lbforum/#lbforum的主app,论坛功能都在改app中 | |+lbregistration/#registration app的lbforum扩展,主要去掉邮件地址认证功能 | |+onlineuser/#显示在线用户的app(可复用的django app,可脱离lbforum单独使用) |