|
Zopeプロダクト開発メモ
zope product 開発の備忘録
全3件 -
01
-
3
owa
2004/09/15 23:13
id: mJs8kxp1Zus
prob: 0.0%
-
-
プロダクトを開発する場合、普段使っている user で zope を立ち上げた方がなにかと便利です。という理由で新規に zope インスタンスを追加してみました。
普通にログインした後
$ /usr/lib/zope/bin/mkzopeinstance.py -d Zope -u <username>:<password>
これで ~/Zope の下に zope サーバ環境が一式まるごとできあがります。
~/Zope/etc/zope.conf を適当に(port番号とか)修正したあと
$ ~/Zope/bin/runzope
で zope を立ち上げます。
こういうことを(なぜ)今まで試さなかったのが不思議。これでパーミッションやらシェル環境やら普段の開発環境のままで試せます。いらなくなったら Zope ディレクトリごと削除してしまうだけ。
追記: ZopeX3 の場合は ".py" がいらない
$ /usr/lib/zope/bin/mkzopeinstance -d Zope -u <username>:<password>
-
2
owa
2004/01/26 10:26
id: mJs8kxp1Zus
prob: 0.2%
-
-
デバッグ用ログの出し方ですが、知らなかったので備忘録;;
プロダクトのクラスの先頭に
from zLOG import LOG, INFO
と書いて置いて、後はすきな場所で
LOG('HogeClass:', INFO, '知りたい値')
などと呼び出せば zope のログにタイミング良く出力されます。
詳細は zope/lib/python/zLOG/MinimalLogger.py 見れば良さそう。
-
1
owa
2004/01/26 10:26
id: mJs8kxp1Zus
prob: 0.0%
-
-
プロダクトインターフェース作っていて、やっと分かったこと。
一番は自分が何もしらなかったこと。やっぱりいろんなプロダクトの UI ってのはみんな苦労して作ったんだなといまさらながら思います。
データの持ち方で少しだけ分かったことですが (鯖側の場合)
REQUEST.form -- 基本的にはこれでクライアントからの情報を取り込む
REQUEST.set() -- manage_hoge.dtml に情報を送る(追加する)
REQUEST.SESSION -- 本来クライアント情報を持つべきものかもしれないが、REQUEST
に保持できない場合(dtmlの中のリンクの先など)に利用させてもらう(邪道かな?)
オブジェクトの揮発属性(self._v_hoge)は zope オブジェクト生成時に __set_state__()
で一回だけ設定されるようにすること。つまり読み込み専用。書き込んでしまうと
zope のキャッシュ処理の関係で分けのわからないことになる。
というわけでやっとブラウザの「元に戻る」ボタンにも、なんとなく対応できたようです。それはこちらの話...
全3件 -
01
|
|