plone.app.blobまたはz3c.blobfile?
-
19-09-2019 - |
質問
Ploneのコンテンツタイプの一部としてBLOBファイルフィールドが必要です。 plone.app.blobのブロブフィールドはこれを提供するはずですが、元のファイル名を含むファイルをダウンロードするためにURLを取得する方法が見つかりません(例: http://plone.site/plone/obj/orig-file-name.avi)。 plone.app.blobを使用してこれを行う方法はありますか?
あるいは、Webには、これを行うためのnamedfileを指し示しているいくつかのポインターがあります。 plone.namedfileはZ3c.blobfileに依存しているようです。 z3c.blobfileはplone.app.blobとどのように異なりますか?
これらの方法の1つは他の方法よりも優れていますか?
VIK
解決
元のファイル名を使用してファイルをダウンロードする場合は、さらにいくつかのピースが必要です。
スキーマのフィールドの設定にプライマリ= trueを入れてください。
コンテンツタイプのクラスサブクラスがplone.app.blob.content.atblobであることを確認してください。
コンテンツタイプのportal_typeをportal_properties/site_propertiesのtypesuseviewactioninlistingsリストに追加してください。
plone.namedFileは、Z3C.Formライブラリで使用できるファイルフィールドを提供します。実際、z3c.blobfileに基づいており、zope.app.fileのファイルオブジェクトと同様のインターフェイスを提供します。アーキタイプベースのコンテンツタイプを構築している場合、これはおそらくあなたが望むものではありません。