Personal tools
You are here: Home Zope&Plone Tips ATPhotoによるZODB肥大化回避
Document Actions

ATPhotoによるZODB肥大化回避

by maru last modified 2006-10-27 22:54

FileSystemStorageを使ってオブジェクトをZODBの外へ

【環境】

  • Zope-2.8.6-final (Linux)
  • Plone-2.1.3
  • ATPhoto-1-0-alpha1
  • FileSystemStorage-2.5rc1

  ATPhoto でPhotoをうpすると他のImageとかと同様に画像データがZODBにがっつり入ってしまうのですよ。んなことやったらZODBがとてつもなく肥大化してしまうのですよ(;´Д`)。

 なんとかならんもんかとググったりしてみると(たしかPlone.orgのATPhotoのどっかにあった…)、 FileSystemStorage のキーワード。どうもコレを使うとPhotoをLocalFileSystem上におけるっぽいんですが説明が英文でイマイチ(否、さっぱり)分からず、どうやって埋め込めばいいのか苦戦してました。

 んが、やっと見つけましたよ。意外と簡単…いや、はいぱぁに簡単でした(笑)。方法はATPhoto Product内の「config.py」の一番下にある一行を変えてるだけ。

FS_STORAGE = False
    ↓
FS_ST0RAGE = True

 んでZopeをリスタートしてPhotoをうpするとFileSystemStorageで設定しているStorage pathにゴリゴリ落としてくれます。Yes!!

---

 うあ~。追記です追記。

 今使っているATPhotoは 1.0-alpha1 つぅバージョンなんですが、通常に使うと問題ないけどFileSystemStorageと連携するとATPhotoの状態を公開 → 非公開 にすると作成者であるMemberでさえも権限が云々で表示されなくなってしまう模様。

こんな画面になっちゃうんですよ(;´Д`)

 ただ、表示できないだけで状態変更や編集はできるっぽい。…しかし非公開にしておいて水面下でコソコソできないのはイタイ。

 plone本家を漁ってみるとどうも↓が絡んでそうな悪寒。

http://plone.org/products/atphoto/issues/28