本文を読み飛ばす

ZReST Productの拡張

ZReSTを使ってZope内でReSTを使う方法は
この間紹介しました.

今日は自分なりに変更した点を追記します.

とりあえず全部できるようになったらpatchを公開しましょう.

1. titleをpropertiesに追加しておく

なんでかtitleが編集できません.

デフォルトは登録時のidです.

後で調べたらdocumentのタイトルから引っ張るみたいですね.

これだとコピーした場合, titleが変わらなかったり, titleが途中で変更できません.
下のようにZReSTのコードを変更してtitleがmanage_editPropertiesに出てくるようにします.:

72,73d68
<         ### append in ZReST2
<         {'id':'title', 'type': 'string', 'mode': 'w', 'default': ''},
2. stylesheetをZODB上に置けるようにする

なぜかZReSTはstylesheetを普通のfilesystemから参照します.

これだとZMI上からはstylesheetが変更できません.

次のようにコードを変更して, ZODB上からstylesheetを変更します.:

242,248d229
<             #### begin of append in ZReST2
<             pub.settings.raw_enabled      = 1
<             pub.settings.embed_stylesheet = 0
<             pub.settings.doctitle_xform   = 0
<             pub.settings.title            = self.title
<             #### end of append in ZReST2
3. title属性をtitleから設定する

こちらは計画中.

ZReSTを表示してもtitleタグが設定されないので
少し悲しいです. titleプロパティからtitleを変更するようにします.

次のようにコードを変更します.:

242,248d229
<             #### begin of append in ZReST2
<             pub.settings.raw_enabled      = 1
<             pub.settings.embed_stylesheet = 0
<             pub.settings.doctitle_xform   = 0
<             pub.settings.title            = self.title
<             #### end of append in ZReST2

あれ、これ動きませんね。
原因は考え中。

4. dtmlを挟み込めるようにしてしまう!

これも計画中. 便利になります.

せっかくZope上にあるのですから, dtml-varなどを使えるようにします.

手順としてはdtml解釈⇒ReST解釈という風にします.

次のようにコードを変更します.:

これはまだ開発中です。

ポイントは先にdtml解釈してしまうことです.

ReSTのディレクティブで対応すると記述がよくわからなくなってしまいます.

え? ディレクティブで対応した方がいいって? うーん(^-^;...

コメント

Comments powered by Disqus
宣伝: