发布基于GAE的个人Wiki系统 - NancyWiki

介绍

一个周末的时间,我写了这个Wiki系统。NancyWiki是基于Google App Engine开发的,使用的语言是Python。Wiki标记语言采用的是Markdown,因为它简单,易用。

NancyWiki致力于打造用户真正想要的个人Wiki系统。多看书,多学习,多记笔记,就用NancyWiki!

NancyWiki尊崇的原则:尽量保持简单,实用。NancyWiki保持了代码的精简,一共3个python文件:main.py, models.py, views.py。同时,提供了完善的换肤功能,让用户更加简单的DIY自己的Wiki皮肤,现themes目录提供了simple和plain两套皮肤,可以在设置页面随时进行切换。

试用

NancyWiki提供了一个Demo页面,任何人都可以对这个页面进行编辑。心动不如行动,赶紧体验一下吧。

下载

NancyWiki是开放所有源代码的,任何人下载源码,申请一个Google App Engine账号,就可以部署完全属于自己的Wiki系统。

Google Code主页: http://code.google.com/p/nancywiki/

下载1.0.1稳定版本:http://nancywiki.googlecode.com/files/nancywiki1.0.1.zip

获取最新代码:

hg clone https://nancywiki.googlecode.com/hg/ nancywiki


安装

下载了源码后,打开app.yaml文件,修改application字段为你的GAE应用的名称: 

application: yourappname

然后,由于NancyWiki本身不提供评论系统(简单原则),而是在模板里挂接Disqus的评论系统。因此,如果想使用Disqus评论系统,请先注册一个Disqus账号,然后学习一下用法。待你了解差不多之后,回过头来,修改一下wiki.html模板中的评论部分的代码为你自己的Disqus代码。

<div id="comments">
    
<div id="disqus_thread"></div>
    
<script type="text/javascript">
        disqus_developer = 1;
        (function() {
            
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
            dsq.src = 'http://nancywiki.disqus.com/embed.js';
            (document.getElementsByTagName('head')[0|| document.getElementsByTagName('body')[0]).appendChild(dsq);
        })();
    
</script>
    
<noscript>Please enable JavaScript to view the <href="http://disqus.com/?ref_noscript=nancywiki">comments powered by Disqus.</a></noscript>
</div>

 配置完了,上传:

python appcfg.py update yourappname

太棒了,赶紧体验一下吧,访问:http://yourappname.appspot.com/


使用

  • 新建页面

    在浏览器的地址栏里输入任意不存在的地址,将会创建一个默认的页面(实际并未写入数据库),点击编辑按钮,进入页面的编辑页面。或者,先编辑页面内容中的地址超链接,通过点击超链接创建新页面。 [New Page](link) 效果:New Page

  • 编辑页面

    点击编辑按钮,进入传说中的所想即所得编辑界面。为了方便编写Markdown内容,我使用了wmd(The Wysiwym Markdown Editor)编辑器。可以用鼠标,正所谓:所点即所想,所想即所得。你在编辑的任何时候,都可以即时的查看到预览的效果。(就在编辑页面的下方)。更多Markdown语法,详见:http://en.wikipedia.org/wiki/Markdown

  • 删除页面

    我不提供删除页面功能,如果这个页面当初不需要,为什么创建出来呢?既然已经来到了人世,何不改头换面呢?

  • 设置

    设置页面,可以设置网站的标题,谷歌搜索的域名(由于GAE拒不提供like语法,只能借助Google搜索),Wiki皮肤。


截图

 

我的个人Wiki:http://wiki.coderzh.com

体验地址:http://wiki.coderzh.com/demo

 

作者:CoderZhCoderZh的技术博客 - 博客园
微博:http://t.sina.com.cn/coderzh
出处:http://coderzh.cnblogs.com
文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

posted @ 2010-09-12 22:16 CoderZh 阅读(4321) 评论(23) 编辑 收藏

 回复 引用 查看   
#1楼 2010-09-12 22:23 谢小漫      
nice job
 回复 引用 查看   
#2楼 2010-09-12 22:26 二叉树      
引用谢小漫:nice job

Nancy?好女性化的名字
确实不错。推荐+
之前也关注过GAE,地址也申请了,但是一直没付诸行动,佩服楼主的速度。

 回复 引用 查看   
#3楼[楼主] 2010-09-12 22:28 CoderZh      
引用二叉树:
引用谢小漫:nice job

Nancy?好女性化的名字
确实不错。推荐+
之前也关注过GAE,地址也申请了,但是一直没付诸行动,佩服楼主的速度。

谢谢推荐。我写了一个系列叫Nancy的东西,呵呵。Nancy,就是。。老婆的英文名 :)

 回复 引用 查看   
#4楼 2010-09-13 00:27 亚历山大同志      
用了wmd的可视化编辑器,呵呵,nice
 回复 引用 查看   
#5楼 2010-09-13 00:32 亚历山大同志      
 回复 引用 查看   
#6楼[楼主] 2010-09-13 00:55 CoderZh      
引用亚历山大同志:
试试这个可视化编辑markdown的
http://md-wysiwyg.sourceforge.net/cgi-bin/cgi_wysiwyg_test.py/

试了一下,好像还是一个所见即所得的编辑器。
wmd的工具栏点击后,输出的原始的markdown格式,比较适合我。StackOverFlow用的也是wmd

 回复 引用 查看   
#7楼 2010-09-13 08:14 zeyoo      
CoderZh,你好!我想开发一个.NET版的Wiki请问有什么好的建议?
 回复 引用 查看   
#8楼[楼主] 2010-09-13 08:24 CoderZh      
引用zeyoo:CoderZh,你好!我想开发一个.NET版的Wiki请问有什么好的建议?

把任务分解一下,然后动手去做!

 回复 引用 查看   
#9楼 2010-09-13 08:26 zeyoo      
@CoderZh
Wiki程序一般包括哪些模块?

 回复 引用 查看   
#10楼[楼主] 2010-09-13 09:19 CoderZh      
引用zeyoo:
@CoderZh
Wiki程序一般包括哪些模块?

基本的添加、编辑功能,关键选择一种Wiki标记性语言,比如:markdown, restructuredtext。如果要做公开的多人编辑的话,最好对每次变更的记录保存起来,并且支持回滚。

 回复 引用 查看   
#11楼 2010-09-13 12:40 谢小漫      
没有版本比较
 回复 引用 查看   
#12楼[楼主] 2010-09-13 12:51 CoderZh      
引用谢小漫:没有版本比较

对于个人Wiki来说,版本比较并不是那么必要。当然,不排除以后会添加这个功能。

 回复 引用 查看   
#13楼 2010-09-13 15:52 Jake Lin      
我用tinyWiki,也不错。
 回复 引用 查看   
#14楼 2010-09-13 16:38 zeyoo      
引用CoderZh:
引用zeyoo:
@CoderZh
Wiki程序一般包括哪些模块?

基本的添加、编辑功能,关键选择一种Wiki标记性语言,比如:markdown, restructuredtext。如果要做公开的多人编辑的话,最好对每次变更的记录保存起来,并且支持回滚。


标记语言在其中起什么作用?

 回复 引用 查看   
#15楼 2010-09-13 17:34 谢小漫      
引用CoderZh:
对于个人Wiki来说,版本比较并不是那么必要。当然,不排除以后会添加这个功能。

之前看到过infogami,功能比较简单的,基本的都有了,就是还没有时间配置一个来玩玩。
web.py网站就是用的它。

 回复 引用 查看   
#16楼 2010-09-17 11:08 lobos      
这个不错,简单,过两天配置一个玩:)
 回复 引用 查看   
#17楼 2010-12-05 19:54 Jaron      
在用了,谢谢,很简洁的wiki
http://cooderwiki.appspot.com/

 回复 引用 查看   
#18楼[楼主] 2010-12-06 10:48 CoderZh      
@Jaron
呵呵,不错!

 回复 引用 查看   
#19楼 2010-12-13 20:18 pysqd      
我模仿作了一个本地的wiki
用web.py做的。
http://code.google.com/p/torreyawiki/
在网页设计方面有什么好的经验吗?请教一下

 回复 引用 查看   
#20楼 2011-01-29 18:51 onm      
还是希望弄个历史纪录,版本比较的好,这样要死改错了还可以回复之前的版本。
 回复 引用 查看   
#21楼 2011-04-14 15:21 AllenW      
学习中,谢谢分享
就是感觉速度有些慢,呵呵

 回复 引用   
#22楼 2011-05-08 16:29 Jarvis Lin[未注册用户]
很簡潔的好東西, 推!
不過, 請問如何多人編輯呢?
因為管理員之外的帳號登入後,
編輯會出現:
錯誤 310 (net::ERR_TOO_MANY_REDIRECTS): 重新導向次數過多。

 回复 引用 查看   
#23楼[楼主] 2011-05-08 16:35 CoderZh      
引用Jarvis Lin:
很簡潔的好東西, 推!
不過, 請問如何多人編輯呢?
因為管理員之外的帳號登入後,
編輯會出現:
錯誤 310 (net::ERR_TOO_MANY_REDIRECTS): 重新導向次數過多。

你好。非常抱歉,现在还不支持多人编辑。

发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 1824582 8QdbbD5uud4=