【问题标题】:Which wiki will let me dynamically create a page when its link is clicked?哪个 wiki 会让我在单击其链接时动态创建一个页面?
【发布时间】:2008-10-13 07:23:34
【问题描述】:

对于我正在开发的应用程序 (*),我需要动态生成的页面和静态页面的混合。使用 wiki 会很酷,一旦第一次访问动态页面,它就会变成静态页面,用户可以像任何其他静态 wiki 页面一样对其进行注释。

换句话说,我想用 a) 生成 wiki 格式的新内容并将其存储在数据库中然后 b) 解析和显示该文本。

哦,这应该是递归的——创建的页面可能有链接到更动态生成的页面等等。

我将根据其名称生成动态页面(包括任意深度的类别/命名空间信息)。

最后一件事 - 通过批处理脚本预先创建一些动态页面也很好(但不是必需的)(主要是为了提高性能,因为这些页面可能需要一些时间来生成)。

所以我的问题是哪个 wiki 软件最容易修改/编写插件来做到这一点?

(*) 想象一个 coredump 分析器(想想 gdb),你会看到一个转储列表(可能存储在某个远程机器上)。您单击转储,它会为您提供线程列表。您单击一个线程,它会为您提供堆栈。您单击堆栈帧,它会显示内存。您单击一个内存字,它会显示该地址处的内存页,依此类推。

在浏览转储时,您可以添加有关您发现的问题的注释,以便日后为您提供帮助或与可能也在查看转储的同事分享。

几个月后,转储可能已从远程计算机上消失(需要大量空间来归档所有这些转储),但现在您遇到了类似的问题。您将最近转储中堆栈跟踪中的一个函数名称输入到 wiki 搜索框中,然后检索有关上一次事件的保存信息。

更新:感谢所有答案。我实际上可能会选择 MediaWiki。看起来我可以创建一个ArticleViewHeader extension,然后可以调用doEdit 来创建该页面(如果它尚不存在)。有一个 VirtualPage extension 似乎做了类似的事情。

【问题讨论】:

    标签: wiki mediawiki coredump


    【解决方案1】:

    我已经看到使用 pmwiki 完成此操作。

    【讨论】:

      【解决方案2】:

      我觉得tiddlyWiki 很有趣

      【讨论】:

        【解决方案3】:

        Trac 也这样做。

        【讨论】:

          【解决方案4】:

          Perspective 是另一个。这是一个基于 .Net 的开源 wiki。

          【讨论】:

            【解决方案5】:

            Tiddlywiki 是最好的 wiki 之一。以下是如何以编程方式创建一个整洁的程序

            var t=store.createTiddler("你好") 如果(!t)返回假; var txt=t.text+"要 apdsdsddpend 的东西"; var who=config.options.txt用户名; var when=new Date(); store.saveTiddler(t.title,t.title,txt,who,when,t.tags,t.fields);

            这将创建一个新的 tiddly,名称为 hello,内容为 ap...

            如果您想在添加上述文本后以编辑模式打开 tiddler,请添加此代码

            var 标题 = 注释标题; story.displayTiddler(null, title); config.commands.editTiddler.handler(null, null, title);

            希望对您有所帮助。

            tiddywiki 也接受查询字符串

            示例: http://www.tiddlywiki.com/#open:HelloThere open:title 打开具有指定标题的 tiddler start:safe 切换到安全模式 search:text 搜索指定的文本 tag:text 显示带有指定标签的 tiddlers newTiddler:title 在编辑中打开具有指定标题的新 tiddler 模式 newJournal:titleFormat 使用指定的打开一个新的 tiddler DateFormatString: #newJournal:"YYYY MMM DD"

            【讨论】:

              【解决方案6】:

              您的问题的直接答案是:几乎所有开源 Wiki 都应该易于修改 - 选择您最熟悉的一个(wiki 或语言)。

              如果我正确理解您的问题,我知道jspwiki 提供了开箱即用的此功能。它目前在 apaches 孵化器中。检查JspWiki's Sandbox。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2016-11-28
                • 2020-01-21
                • 1970-01-01
                • 2020-04-01
                • 1970-01-01
                • 1970-01-01
                • 2011-10-26
                • 1970-01-01
                相关资源
                最近更新 更多