============================== Yet Another WikiWiki Framework ============================== ($Id$) >>> from zope import component >>> from zope.publisher.browser import TestRequest An Example for an Elementary Wiki Structure =========================================== >>> from cybertools.wiki.base.wiki import WikiManager, Wiki We create a wiki manager with one wiki that in turn contains a simple start page. >>> manager = WikiManager() >>> wiki = manager.addWiki(Wiki('demo_wiki')) >>> startPage = wiki.createPage('start_page') We format the content of the start page using the restructured text format. >>> startPage.text = ''' ... **Welcome to the Demo Wiki** ... ''' The parser for restructured text and a corresponding HTML writer are the default plugins used, so we can already render the page as HTML. >>> print startPage.render(TestRequest())
Welcome to the Demo Wiki
Links to existing pages ----------------------- We now create another page that contains a link to the start page. >>> aboutPage = wiki.createPage('about') >>> aboutPage.text = ''' ... **Information about the Demo Wiki** ... ... This is the cybertools demo wiki. ... ... `Back to the Start PageInformation about the Demo Wiki
This is the cybertools demo wiki.
Let's now have a look at the link manager - it should have recorded the link from the page content. >>> from cybertools.wiki.interfaces import ILinkManager >>> linkManager = manager.getPlugin(ILinkManager, 'basic') >>> links = linkManager.links >>> len(links) 1 >>> link = links.values()[0] >>> link.source, link.target, link.name, link.refuri (0, 1, u'start_page', 'http://127.0.0.1/demo_wiki/start_page') Links to not yet existing pages ------------------------------- >>> aboutPage.text += ''' ... `More...Information about the Demo Wiki
This is the cybertools demo wiki.