Personal tools
Document Actions

zope

Up one level

Document Actions

日付インデックスの持ち方を変更

by ats posted at 2003-09-24 19:08 last modified 2005-10-18 23:00

内部に,カレンダー表示などに利用している日付のインデックスを持っています。
今までは,年,月,日を数値になおした(20030905みたいな)だけ,というとてもダサいリストだったのを,年,月,日という階層を持ったリストに変更。というか,数値にならしたベタなリストだと,月ごとのリストが生成しにくい。

Category(s)
zope
COREBlog
The URL to Trackback this entry is:
http://coreblog.org/ats/20/tbping

Re: テスト

Posted by shibata at 2003-09-19 21:39
テスト。


Re: 日付インデックスの持ち方を変更

Posted by あぶぢゅ at 2003-11-10 20:55
9月のpostにコメントつけてもいいでしょうか?

闘病日記として使わせていただこうと思っているのですが、その場合、過去の日付でpostしたくなることがあります。
投稿時に日付を入力、あるいは後で日付を変更、なんてことをするのは難しいんでしょうか?
ソースを少しながめてみたのですが、DTMLだけで簡単に変更するのはできなさそうだったので、自分でやるのはあきらめました。
それに、こちらのpostの内容からすると、いろいろありそうですね。

日付を変更するような使い方は、皆さんあまりしないのかな?

# 要望や質問はどちらに書けばいいか迷ったので、こちらに書いてしまいました。


Re: 日付インデックスの持ち方を変更

Posted by ats at 2003-11-10 22:36
Entryというクラスの__init__では,日付を渡せるようになっているのですが,COREBlog.pyのmanage_addEntryでは日付を渡せないので,おっしゃる通りDTMLだけでは,現状は無理です
とはいえ,COREBlog.pyのmanage_addEntryにオプションで日付を渡すように拡張するのは簡単なので,ちょっとトライしてみますね

#というかそもそも,SquishdotやMovableTypeから過去のEntryをインポートするには
#そういうことができないとならないんですよね。。。

ご病気,でしょうか。。。


Re: 日付インデックスの持ち方を変更

Posted by あぶぢゅ at 2003-11-11 14:23
ありがとうございます。オプション拡張、期待しております。

子供が9月から入院中で、その闘病記を作成中です。最初はPCの日付設定を変えながら日記を入力し(^_^;)、早く公開したいと思っています。


ソースコードの行数を数えみました

by ats posted at 2003-09-29 01:59 last modified 2005-10-18 23:00

COREBlogのソースコードの行数を数えてみた所,Pythonのコード部分だけですでに約2,500行ありました。Squishdot 1.5.0が1,760行なので,行数ベースではもう越えてますね。ま,長けりゃいい,ってものではありませんが。私はlambdaとかmapとか嫌いな人なので,その分若干コードは長くなっているかもしれません。Squishdotはメンテナーが変わってからダイエット路線になっていて,その点もコード量を少なくしている要因なのかもしれない。
ZopeのProductとしては,そこそこの規模になるのではないかと。本当はもう少しサックリと作るつもりだったんですが,いろいろ欲張っているうちにこうなってしまいました。moblog機能とかいろいろつけると,最終的には3000行くらいになるのかな,というのが目下の予想です。

Category(s)
zope
COREBlog
The URL to Trackback this entry is:
http://coreblog.org/ats/29/tbping

Zope Python Cookbook

by ats posted at 2003-09-29 02:47 last modified 2005-10-18 23:00

Amazonで検索をしていたらこんなものが。さっそく予約,と。

Category(s)
zope
python
The URL to Trackback this entry is:
http://coreblog.org/ats/30/tbping

zope.orgでProductを公開する

by ats posted at 2003-10-07 12:33 last modified 2005-10-18 23:00

zope.orgでProductを公開する方法に関する覚え書き。
ちゃんとワークフローが設定されていて,メンテナンスチームの査読を受けてから,公開されるようになっています。


  1. まず,zope.org上にアカウントを作ります
  2. My Folder(自分のフォルダ)に,Software Packageというオブジェクトを作ります。このオブジェクトが,Productリリース用の「入れ物」になります
  3. Software Packageの中身を記述します。ライセンス,メタデータなどの情報も,この中で設定します。必要なら,スクリーンショット画像などを追加します
  4. 配布用のファイルのために,Software Releaseというオブジェクトを,Software Packageの中に追加します。バージョンが上がったら,さらに別のSoftware Releaseを追加します
  5. 一通り編集が終わったら,すべてのオブジェクトのState(状態)を公開準備状態(Pending)に変えます。Folder Contentsを見ている状態で,上部に表示されるStateリンクをクリック,Change Stateの下にある項目からSubmitを選択,Saveします。この状態で,オブジェクトは公開準備状態になり,編集ができなくなります
  6. もし間違いが見つかり,直したくなったら,StateをRetractにして,修正します。編集が終わったら,5) の手順で再度「公開準備状態」に戻します
  7. あとは,「査読」が終わるまで待ちます。(たぶん)メンテナンスチームからなんらかのメールが届くはずです。問題があれば,その旨指摘されます。問題がなければ,公開されます:-)。

以前,ZGogooleというProductを公開したことがありました。この時はまだzope.orgがCMF化される前でしたが,同様のワークフローがありました。

Category(s)
zope
The URL to Trackback this entry is:
http://coreblog.org/ats/43/tbping

BlogFace

by ats posted at 2003-10-08 01:55 last modified 2005-10-18 23:00

Jean told me about BlogFace(thanks!) - tiny,but nifty Weblog product for Zope.

COREBlogがzope.orgのNewsに上がっています。海外からのアクセスがたくさ?ん。効果デカイね。

何通か英文のメールをいただいたのですが,やりとりの中で,「BlogFaceもいいよ!」と教えていただきました。数カ月前,一度試してみたのだけど,うまくオブジェクトが作れなかったので放置しておりました。
深町さんによると「WikiとBlogを統合」とある。再度試してみようと思い,ソースを覗いてみると,ファイルのパスの生成で失敗してオブジェクトが作れないようだ。簡単に直せそうなので,時間ができたらトライしてみるつもり。
開発は終了しているとのことで,多分最近のZopeでは動かなくなっているみたいだけど,激しくもったいないと思いました。

Category(s)
zope
The URL to Trackback this entry is:
http://coreblog.org/ats/45/tbping

Re: BlogFace

Posted by Albert Delgado at 2003-10-08 20:16
Looking good!


Re: BlogFace

Posted by znek at 2003-10-08 20:57
Nah! It looks crappy compared to COREBlog.


Re: BlogFace

Posted by ats at 2003-10-08 22:59
>Albert - san


>znek - san

Thank you for your comment!
I think its contept - blog and wiki integration - is nice ;-).


Integration with Epoz

by ats posted at 2003-10-10 02:48 last modified 2005-10-18 23:00

EpozというProductとインテグレーションしてみました。EpozをCOREBlogと同じZopeインスタンスに入れておくと,Entryの編集中にリッチテキストエディターが使えるようになります。インストールしていない場合は,普通のフォームが表示される。また,EpozのWidgetをカスタマイズ,ツールバーはSettingのAllowd Tagに連動して必要なツールしか表示されないようになってます。

最初,Epoz化されたフォームの中で改行ができないのでびっくりしましたが,使っていたノートのキーボードにはEnterキーしかなかったのが原因のよう。CRしか効かないみたいです。Control + Mで改行(というか新しいパラグラフ作成)。pタグのマージンが空きすぎなのはまずいなあ,調整しないと。

The URL to Trackback this entry is:
http://coreblog.org/ats/50/tbping

直メール

by ats posted at 2003-10-11 23:23 last modified 2005-10-18 23:00

Ploneをインストールすると一番下のCopyrightの筆頭に名前が出てくるAlexander Limiさんからメールをいただきました。かいつまんでいうとPloneはBlogツールを持ってるんだけどちょっとアレなので,COREBlogをナニしてくれればPloneの公式Blogツールにしてあげるよ,というお話。

んー,なかなか難しいですね。。。

まず直々にメールをいただいたことに関しては正直うれしいです。慣れない英語でささやかなサイトを開いたりリリースを書いたりしたかいがありました:-)。

Ploneはすばらしいとは思うんだけど,やっぱりインストールとか運用とかカスタマイズにはそこそこのスキルを要求されるような気がしています。そうでなくてもZopeは十分に毛深いので,COREBlogはもうちょっと手軽なツールであることを意識して作って行きたい,と思っています。

PloneやCMFの開発にリソースを集中することが,多分,Zope界全体の発展に貢献することになるんだろうなあ,とは思ってはいるんです。なので,そのうちPlone用の別のBlogツールをフルスクラッチで作ることになるんだろうな,と個人的には予測しています。つーかCOREBlogをPlone対応にしたりできるのかな? ちょっといろいろホゲってみよう。。。

さて,というようなことを英語で書いて,お返事をしなければならないわけですが。明日にしよう,明日にね。。。(^^;

Category(s)
COREBlog
zope
The URL to Trackback this entry is:
http://coreblog.org/ats/55/tbping

Re: 直メール

Posted by JuNya at 2003-10-12 00:49
COREblog の何が好きかって言うと「手軽さ」です。
柴田さんの会社のほうの「経緯」に書いてある、PABlog を指して「毛深すぎ。CMF ベースで
立ち上げるのが面倒」という言葉、なかなか気に入っていまして、この言葉は手軽さとともに
COREblog を使う理由でもあります。
(Plone や CMF が嫌いなわけではないです。Plone は会社のポータルサイトに使っちゃおうかと
思うくらい好きです。)

柴田さんも言っているように、Plone の上モノになると利用者(設置者?)へ要されるスキルが
とたんに上がってしまいますね。これから Zope を理解していこうとしている自分には、
超えなければならないハードルが増えてた感じです。
しかしちょっと考えてみると COREblog 以前に Zope を安定運用していくことがすでに
それなりのスキルが必要な気がするので、ハードルが一つや二つ増えたところで、
たいした事は無いのかな、なんて思ったりもします。

うーん、なにが言いたいんだろう(笑)。えと、ユーザの勝手な言い草として *COREblog* は
「手軽さ」は捨てて欲しくないなあ、ということです。



ZWiki のようにそれだけでも使えるし、Plone の上モノにもなるってのは大変なんでしょうか?

# limi さんってハンサムですよね(笑)。


Re: 直メール

Posted by ats at 2003-10-13 01:51
>NuNyaさん

ただですねえ,ある時点でPloneのようなものがZope自体の手軽さを追い抜いてしまうようなことはありえると思っているんですよ。たとえば,最新のPloneはWebインターフェースからProductをインストールできるようになっているようですし。なので,今後の動向は要チェックだとは思っています;-)。
あと,Zopeの安定運用のためには

・ログは(当然)rotateする
・THREAD数を8〜16に設定
・運用環境には不要なProductは極力インストールしない
・思いロジックを作り付けない
・可能ならApacheのReverseProxyやSquidなどでキャッシュを行う

くらいを守っていれば,まずまず安定して運用できるんじゃないでしょうか。
これ以上のノウハウは,むしろ運用というよりパフォーマンスチューニングのたぐいになるような気がしています。


COREBlogのPINGサーバー

by ats posted at 2003-11-01 15:03 last modified 2005-10-18 23:01

KOF-2003の会場はLANが通っていて,ブース番の合間に作りかけのものをごにょごにょと改造していた。で,なんとか受け口はできた。あとは,PINGを打たれたあとにBlogまで出かけて言って,PermalinkとかタイトルとかExcerptなんかを取得するようにする予定。で,最新のもの数十件を表示する,と。

しかししまったな,ちゃんとPINGを打つ時にUserAgentなんかを出すようにしておけば,相手がCOREBlogかどうか判別できたのに。。。PermalinkのURLのパターンから判別するかな。

さて,名前はどうしよう。たぶんインターナショナルなサービスになると思うので,それっぽい名前をつけたいなあ。

Category(s)
zope
The URL to Trackback this entry is:
http://coreblog.org/ats/104/tbping

PINGサーバーちと改良

by ats posted at 2003-11-04 19:42 last modified 2005-10-18 23:01

いや,もともとだめな仕様だったんですが,更新報告用のPINGサーバー,以下ちょっと改良しました。

  • タイムアウトを追加。urllibってなんでタイムアウトないんだろうなあ(ブツブツ)
  • 一度PINGを受けてblogにRDFを読みに行くスクリプトに排他制御追加

というわけで,より安定して動くようになった(ハズ)。でも,あんまりイジめないでね。PINGサービスももっとプロモーションして使ってもらわないとなあ。

Category(s)
zope
The URL to Trackback this entry is:
http://coreblog.org/ats/110/tbping

タイムアウトならhttplib

Posted by malo at 2003-11-04 20:58
httplibのgetresponse()が使えると思います。


タイムアウトなら408が帰ってくると思います。

たまたま,リンク切れを自動検出する外部メソッドを作っていたので,タイムリーな話題でした。


参考までに

Posted by malo at 2003-11-04 21:08
 自分で作ったURLが存在するか調べる関数です。
 プログラムは我流ですので,アドバイスなどいただけたら有難いです。


import httplib
from string import split
Host = split(URL, '/')[2]
Path = '/' + split(URL,'/',maxsplit=3)[3]
conn = httplib.HTTPConnection(Host)
conn.request("GET", Path)
res = conn.getresponse()
conn.close()
return res



Re: PINGサーバーちと改良

Posted by ats at 2003-11-04 22:12
>maloさん

私が困っていたのは応答しないホストに対するタイムアウトでして,せっかくいただいたサンプルは役立てそうにありません(スイマセン)。つまり,conn.request()の時点で応答が帰って来ない/時間がかかる場合に困ったな,ということなのでした。


www.python.jp/Zope/PyLog/1065766088/index_html


失礼しました

Posted by malo at 2003-11-04 22:51
HTTPConnectionからrequestの間ですね。
なるほど。try文を工夫してタイムアウトが検出できるのかな〜?

urlparse便利ですね。これいただきます。


Re: PINGサーバーちと改良

Posted by ats at 2003-11-04 23:07
応答がない相手に対しては,urllibとかは延々応答を待つので,スッドレなんかを使って時間を区切るですよ。


mooyaさんが幕張でZopeCMSのプレゼン

by ats posted at 2003-11-13 22:39 last modified 2005-10-18 23:01

岩田さんのBlogですでに御案内のようでご存じの方も多いとおもいますが,Cube de Zopeを運営されているmooyaさんが,幕張の展示会でCMSに関してプレゼンされるこのこと。がんばってください:-)。

日時は来週金曜日の21日。Zopeで実際に大規模サイトを構築/運営されている方のお話を聞ける機会はなかなかないですよん。

Category(s)
zope
The URL to Trackback this entry is:
http://coreblog.org/ats/124/tbping

Re: mooyaさんが幕張でZopeCMSのプレゼン

Posted by mooya at 2003-11-14 01:20
お久しぶりです。
トラックバックありがとうございます。

プレゼンは久しぶりなのでとても心配です。発表は一般の人にもわかるような話が中心なので、、つまらないものになりそうです。

Gogooleも復活してたんですね、、私は歳なのかチャット系はとても疲れるようになりましたが、ちょこちょこ見に来ますね!


Re: mooyaさんが幕張でZopeCMSのプレゼン

Posted by ats at 2003-11-14 12:35
>mooyaさん
>お久しぶりです

ホントですね,お久しぶりです


私も時間の都合をつけて聞きにゆきます


Pythonな求人
r = urlopen("http://www.webcore.co.jp/recruit")
About this blog
■Author
atsこと柴田淳です。この記事を読んでいただくと,技術者としての人となりを分かってもらえるかも。
Webcore株式会社 代表取締役
Plone上で動く,オープンソースのBlog Product - COREBlog2を使って運用しています。

最近書いた原稿
最終回 Python 3.0座談会(動画つき) 2009-07-16
Python 3.0 Hacks 第6回 Pythonicな文字列フォーマットforamat()メソッド 2009-03-30
言語としての一貫性を重視したPython 3の進化 2009-02-20
Python 3が後方互換性を捨てても求めたもの 2009-02-02
Python 3.0 Hacks : 第0回 Pythonの2008-2009 2009-01-01
 
最近書いた本,Mook
みんなのPython 改訂版
Python使いはもちろん,プログラミングの初心者から,他言語からの移行組までご好評いただいているPythonの定番入門書の第2版です。Python 3.0を含む最新の情報について加筆を行い,より読みやすいように構成を大幅に見直しました。第一版をお持ちの方にもお役立ていただける内容になっています。
みんなのPython Webアプリ編
Pythonの基礎から,Webアプリやフレームワークの仕組みまで,つまることなく一気に学べる書籍です。「みんなのPython」と一緒に読んでください:-)。
 

Powered by Plone, the Open Source Content Management System