GrokでZope 3を使う
Zope 3を使う方法の1つとして、Grokというフレームワークを使う方法があります。
GrokはZope 3をいまどきの軽量Webアプリケーションフレームワークのようにお手軽に使えるようにするためにZope 3を使って作られたフレームワークです。Zope 3ではDependency Injection(DI)のためにZCMLというXMLフォーマットの専用のファイルを書く必要がありますが、Grokでは必要ありません。
この連載では、Grokを使ってZope 3アプリケーションを作っていきます。
Zope 3/Grokの環境設定とインストール
Zope 3/Grokをインストールするには、次のソフトウェアを用意してください。
・Python 2.4
Pythonの最新バージョンは2.5ですが、現在のZope 3はPython 2.4上で動作します。現在のPython 2.4系の最新バージョンは2.4.4です。
・Cコンパイラ
GNU/LinuxやMac OS Xを使っている場合にはCコンパイラが必要になります。Windowsを使っている場合には、この後で説明するeasy_installが自動的にバイナリパッケージをインストールするので必要ありません。
・Easy Install
Easy InstallはPython Package Indexから自動的にegg(Pythonパッケージの配布形式の1つ、Javaのjarのようなもの)をダウンロードしてインストールしてくれるスクリプトです。Zope 3とGrokはEggに対応しているため、インストールするのにEasy Installを使います。
Easy Installをセットアップするためのスクリプトを以下のURLからダウンロードしてください。
関連リンク: | |
Easy Install http://peak.telecommunity.com/dist/ez_setup.py |
次にこのスクリプトを実行します(管理者権限が必要な場合があります)。
$ python2.4 ez_setup.py |
インストールが完了すると、easy_install コマンドが使えるようになります。別バージョンのPython用のeasy_installをインストール済みの場合には、easy_install-2.4コマンドを使ってください。
・VirtualEnv
Python 2.4がシステム領域にインストールされている場合、GrokやZope 3のパッケージをインストールするのに管理者権限が必要になります。また、rpmやdebでインストール済みのパッケージと衝突する場合も考えられます。
そのような問題を避けるため、自分のホームディレクトリ内に自分専用のPython環境を構築することができます。これはGrokを使ううえで必須ではありませんが、VirtualEnvを使ったローカルなPython環境の構築方法を紹介します。
初めにVirtualEnvをインストールします。ここまでは管理者権限が必要になる場合があります。
$ easy_install virtualenv |
次に自分のホームディレクトリ以下にZope 3というディレクトリを作って、その中にPython環境を構築しましょう。
$ mkdir Zope3 |
これでENVディレクトリ内にPython環境ができました。ENVディレクトリの中にはbinとlibフォルダができています。64bit版のGNU/Linuxによっては、lib64ディレクトリが作られる場合もあります。
$ ls ENV |
この環境のPythonを使うには、binディレクトリにあるpythonを使ってください。easy_installも同様にbinディレクトリにセットアップされたので、これを使えばeasy_installでインストールされるパッケージはすべてこのPython環境にインストールされます。
以上で環境設定は完了です。
それでは、Grokをインストールしましょう。上で構築したPython環境に移動して、easy_installを使います。
$ cd Zope3 |
いくつかのパッケージがインストールされ、ENV/binディレクトリにはgrokprojectコマンドが追加されました。
$ ls ENV/bin/ |
以上でGrokのインストールは完了です。
2/3 |
Index | |
Zope 3の魅力に迫る | |
Page1 Zopeフレームワークの変遷 ほかのソフトウェアと何が違うのか? Zope 3の魅力に迫る |
|
Page2 GrokでZope 3を使う Zope 3/Grokの環境設定とインストール |
|
Page3 grokprojectでアプリケーション開発環境をセットアップ サーバの起動と終了 |
Zope 3とは何ぞや? |
Coding Edgeお勧め記事 |
いまさらアルゴリズムを学ぶ意味 コーディングに役立つ! アルゴリズムの基本(1) コンピュータに「3の倍数と3の付く数字」を判断させるにはどうしたらいいか。発想力を鍛えよう |
|
Zope 3の魅力に迫る Zope 3とは何ぞや?(1) Pythonで書かれたWebアプリケーションフレームワーク「Zope 3」。ほかのソフトウェアとは一体何が違っているのか? |
|
貧弱環境プログラミングのススメ 柴田 淳のコーディング天国 高性能なIT機器に囲まれた環境でコンピュータの動作原理に触れることは可能だろうか。貧弱なPC上にビットマップの直線をどうやって引く? |
|
Haskellプログラミングの楽しみ方 のんびりHaskell(1) 関数型言語に分類されるHaskell。C言語などの手続き型言語とまったく異なるプログラミングの世界に踏み出してみよう |
|
ちょっと変わったLisp入門 Gaucheでメタプログラミング(1) Lispの一種であるScheme。いくつかある処理系の中でも気軽にスクリプトを書けるGaucheでLispの世界を体験してみよう |
|
- プログラムの実行はどのようにして行われるのか、Linuxカーネルのコードから探る (2017/7/20)
C言語の「Hello World!」プログラムで使われる、「printf()」「main()」関数の中身を、デバッガによる解析と逆アセンブル、ソースコード読解などのさまざまな側面から探る連載。最終回は、Linuxカーネルの中では、プログラムの起動時にはどのような処理が行われているのかを探る - エンジニアならC言語プログラムの終わりに呼び出されるexit()の中身分かってますよね? (2017/7/13)
C言語の「Hello World!」プログラムで使われる、「printf()」「main()」関数の中身を、デバッガによる解析と逆アセンブル、ソースコード読解などのさまざまな側面から探る連載。今回は、プログラムの終わりに呼び出されるexit()の中身を探る - VBAにおけるFileDialog操作の基本&ドライブの空き容量、ファイルのサイズやタイムスタンプの取得方法 (2017/7/10)
指定したドライブの空き容量、ファイルのタイムスタンプや属性を取得する方法、FileDialog/エクスプローラー操作の基本を紹介します - さらば残業! 面倒くさいエクセル業務を楽にする「Excel VBA」とは (2017/7/6)
日頃発生する“面倒くさい業務”。簡単なプログラミングで効率化できる可能性がある。本稿では、業務で使うことが多い「Microsoft Excel」で使えるVBAを紹介する。※ショートカットキー、アクセスキーの解説あり
|
|