
git-svn-id: svn://svn.cy55.de/Zope3/src/cybertools/trunk@3153 fd906abe-77d9-0310-91a1-e0d9ade77398
81 lines
2.4 KiB
Text
81 lines
2.4 KiB
Text
==============================
|
|
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())
|
|
<p><strong>Welcome to the Demo Wiki</strong></p>
|
|
|
|
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 Page <start_page>`_
|
|
... '''
|
|
|
|
>>> print aboutPage.render(TestRequest())
|
|
<p><strong>Information about the Demo Wiki</strong></p>
|
|
<p>This is the cybertools demo wiki.</p>
|
|
<p><a class="reference"
|
|
href="http://127.0.0.1/demo_wiki/start_page">Back to the Start Page</a></p>
|
|
|
|
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... <more>`_
|
|
... '''
|
|
>>> print aboutPage.render(TestRequest())
|
|
<p><strong>Information about the Demo Wiki</strong></p>
|
|
<p>This is the cybertools demo wiki.</p>
|
|
<p><a class="reference"
|
|
href="http://127.0.0.1/demo_wiki/start_page">Back to the Start Page</a></p>
|
|
<p><a class="reference"
|
|
href="http://127.0.0.1/demo_wiki/create.html?linkid=0000002">?More...</a></p>
|
|
|
|
|