HOME | ドキュメント |  ブログ  |  BBS  |  瓦版  | 将棋プロジェクト |  物置小屋   

象歩 ドキュメント

Categories
Zope (46 items)
歳時記 (26 items)
工作 (19 items)
将棋 (25 items)
料理 (2 items)
Vine (27 items)
Squeak (2 items)
(1 items)
雑記 (4 items)
Python (19 items)
ZOPE3 (3 items)
Linux (6 items)
(1 items)
道具 (3 items)
買い物 (1 items)
PC工作 (2 items)
ボート (3 items)
Recent Entries XML
Recent Comments
Recent Trackbacks
Archives
ZOPE3
迷子になっても

21 September 2004

ZopeX3のZMIで遊ぶ

ZOPE3  


ZopeX3 インストールしたのは良いけど迷子の気分です。 まずは遊びのつもりでいじってみました。 ドキュメントは ZopeX3 Book が良さそうです。他には見付けられませんでした。 とりあえず http://localhost:9080/manage で入り、左側に見えるコンテンツタイプを add すれば、 Zope2 のように DTML や ZPT は作れます。 ( zope.conf で HTTP ポートを 9080 に設定しました。インストール等については BBS を参照下さい )

index.html を作り、ブラウザで http://localhost:9080/ を見ると、 http://localhost:9080/index.html に飛びます。(index_html では無い!)


使い方は The new Web-based User Interface が参考になりました。 PDF もあります。

Zope3 ではコンテンツとロジックを分離して、 "Content Space" と "Software Space" から構成されるようになったそうです。 "Content Space" には単純な DTML や ZPT が置かれます。 すべての Site オブジェクトは一個の "Software Space" を持ちます。 たとえば root フォルダは常に Site オブジェクトです。 folder オブジェクトを作り "Make a site" アクションタグをクリックすれば、 新しいサイトができます。

メンバの管理は Securing Components PDF に説明がありました。

メンバの追加は ~/Zope3/etc/principals.zcml に追加するのだそうです。 たとえば、

  ...
  <principal
    id="zope.member"
    title="Member A"
    login="alice"
    password="king"
    />

  <grant
    role="zope.Member"
    principal="zope.member"
    />
  ...
と新規メンバを追加して ZopeX3 を再起動。 manage 画面でサイト (folder) を選択。 "Grant" タグをクリック → "Grant roles to principals" をクリックすると、


[Filter] ボタンをクリックすると、


などという画面になります。 まあこの辺が最初のツボなのかと思ってます。 間違いがあるかもしれないので信用しないでください。

分からないことばかりですが、 いろいろ遊べそうな予感はします、それではまた何時れ。

01 October 2004

ZopeX3のZMIで遊ぶ(2)

SQL Script 作成
ZOPE3  


データベース (PostgreSQL) への接続と 'SQL Script' の作成をしてみました。 上は、このサイトの BBS から最新記事を抽出した時の画面です。 Zopeメモを参考にしました。

先に psycopg を pythonにインストールした後、

$ cd ${zope-instance}/lib/python
$ svn co svn://svn.zope.org/repos/main/psycopgda/trunk psycopgda
$ cp psycopgda/psycopg-configure.zcml ../../etc/package-includes
$ ${zope-instance}/bin/runzope
PsycopgDA (PostgreSQL の DB アダプタ) をインストールし、 ZopeX3 をリスタートします。 これで PsycopgDA が使えるようになってるはずです。 試してみたところ 'SQL Script' の実行まではうまくいきました。 当初、検索結果に日本語が入ると Zope エラーになってましたが、 python の default encoding を utf-8 で初期化することで 解決 しました。


ZMI で [Manage Site] → [Tools] → [Database Adaptor] と選択し、 [Add] ボタンをクリックすると下記画面が現れます。


Psycopg DA をチェックし、 [Add] ボタンをクリックすると DSN 入力画面になります。 書式は ${zope3-source}/lib/python/zope/app/rdb/__init__.py の中に、

  dbi://dbname
  dbi://dbname;param1=value...
  dbi://user:passwd/dbname
  dbi://user:passwd/dbname;param1=value...
  dbi://user:passwd@host:port/dbname
  dbi://user:passwd@host:port/dbname;param1=value...
とありました。うまく接続できると、ここで SQL のテストができます。

DB に接続できることを確認したら、 'SQL Script' を作ります。


Script 作成後 [Add] ボタンを押せば、ここでもテストができます。


テストの実行結果 (成功例)


エラーになった場合は [Errors] タグをクリックすると履歴が表示されます。 さらに Exception の下のリンクをクリックすると、 エラートレースも表示されます。 親切な作りになってると思います。


以下、現時点での勝手な感想です。無知は御容赦ください。

  • cvs から subversion へ世の中変わった。
  • ZMI はかなり使い易くなったようだ。
  • ZopeX3 のタイムスタンプが時々へんかもしれない。

03 October 2004

ZopeX3のZMIで遊ぶ(3)

ZPT Page 作成
ZOPE3  


'ZPT Page' 作成して表示してみました。 一方 'DTML Page' はうまく作成できませんでした。 <dtml-var "getRecentEntries()"> ですらエラーになります。

今のところ 'ZPT Page' と 'SQL Script' は使えそうですが、'DTML' と 'Python Script' は目途が立ちません。 うちのサイトの場合 Zope2 からの移植は時期尚早のようです。 → BBS



一応 ZPT ソース晒して置きます。初めて書きました;; 今のうち ZPT に慣れて置くのが賢いかもしれません。