ZopeでProductを作るには? これ古いかな?
Productはあまり作らず,
いつもPythonScriptでやってます.
なんか簡単な方法ないのかな, と思って考えてたら
下のようなものが出てきました.
これは最近でも通用するのかな...
だいたいソース見たらわかるのはいいのですが,
ドキュメントも欲しいかもしれませんよね. > Zope
[zope-users:06125] Re: プロダクト作成での質問です 2006年 12月 10日 (日) 21:21:09 JST * 前の記事 [zope-users:06123] Re: プロダクト作成での質問です * 次の記事 [zope-users:06126] Re: プロダクト作成での質問です * 記事の並び順: [ 日付 ] [ スレッド ] [ 件名 ] [ 著者 ] 直接の解答になっていなくてスイマセン。取り急ぎ,ヒントとなりそうなことに ついて断片的に書いてみます。 また,この件については最後のお返事となると思います。 On Sat, 9 Dec 2006 18:11:49 +0900 (JST), wrote: > このProductは自環境(Zope2.10.1)で、動作しました。 > これを参考に進めようとしています。 > 実際使用してみると、Addするときに、最初のパラメータ設定 > のdtmlでpathを指定し、fileをメインのpythonに渡しています > 。 > しかし、こちらの意図としてはdtmlでの設定をなくしたいため > 、所定のzexpを指定して使用しようと試みました。しかし、python > で所定のzexpをfile(dtmlで受け取った状態と同じ)にする方 > 法、がわからず、悩んでいます。 ふむふむ。Webブラウザ上のフォームと,実際に動くPythonのコードの対応につ いては理解されているようですね。すばらしい:-)。 キモとなるのはZope APIに登録されているmanage_importObject()というメソッ ドの呼び方です。Zope 2.10の,該当するソースコードは以下のURLで見ることが できます。 http://svn.zope.org/Zope/branches/2.10/lib/python/OFS/ObjectManager.py?rev=69913&view=markup このメソッドは,フォルダのオブジェクトに対して呼び出すことができます。 引数として渡すのは,importしようとするパス(path)です。パスは文字列です。 ソースコードを読む限り,ZopeのインスタンスホームまたはZopeホーム(Zopeを インストールしたディレクトリ)から下の,importしたいファイルの相対パスを メソッドに渡すようです。 吉井さんのプロダクトで,このパスに相当する文字列をmanage_importObject() メソッドに引数として渡せばいいはずです。 ただし,プロダクトをLinuxとWindowsなどマルチプラットフォーム対応にしたい 場合には,パス文字列の作り方にちょっと注意をする必要があります。Pythonの os.pathモジュールなどを調べてみてください。 取り急ぎ。
コメント
Comments powered by Disqus