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

ドキュメント 象歩 Web瓦版
 BBSボード RDF
こんにちは (23)
おためし板 (321)
質問箱 (94)
テスト (30)
You散歩 (4)
建築 DIY (6)
MTB (32)
(10)
節電対策 (2)
このサイトに関する話 (185)
Linux (396)
PC用ハードウェア (6)
Vine Linux 野良系 (64)
PC 工作 (31)
ドローン (0)
自家製GAFA (0)
BBS の改良 (105)
Vine Seed (520)
Zope とプロダクト (95)
Web の利用技術 (131)
DB とファイルシステム (63)
Python と C/C++ と... (29)
Zopeプロダクト開発メモ (3)
UTF-8 化 (42)
Mail 環境 (8)
COREBlog (109)
Zope3 (51)
Windows 64bit (18)
Mac (2)
Squeak スクイーク (67)
Django ぶらり一人旅 (3)
64bits (52)
Mono 思いにふける (10)
Mint Linux (6)
CentOS (2)
ディスクトップ (4)
象歩将棋 (478)
将棋よもやま (210)
サイトのデザイン (31)
心配な話 (66)
うそ (21)
うそ総集編 (0)
昔のゲストブック (20)
ボート部 (23)
Web 日記 (199)
 スパム
逮捕しる (0)
スパムお溜り (3)
ごみ箱 (6)
 リンク
kiyoさんのサイト
ペンタ郎の漫漕ブログ
端艇部員日記
TIT漕艇部の練習動画 @YouTube
墨堤の雄 @FaceBook
ペンタ(五大学ミドル) @FaceBook
Facebook
Vine Seed パッケージビルド状況
Vine Linux パッケージ情報
VineLinux バグトラッキングセンタ
VineSeed 開発用 Trac
VineSeed Specs
RPMパッケージの作成方法
Linux Standard Base
Planet Vine
Vine Linux ユーザーフォーラム
Vine Users ML アーカイブ
VineSeed ML アーカイブ
twitter#VineLinux
勝手に将棋トピックス
詰将棋おもちゃ箱

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 のキャッシュ処理の関係で分けのわからないことになる。

というわけでやっとブラウザの「元に戻る」ボタンにも、なんとなく対応できたようです。それはこちらの話...