0

私は Dexterity を介して Plone 4.3 で 2 つのコンテンツ タイプを作成し、ファイル システム上に Plone 製品を作成しました。

タイプは次のとおりです。

  • サプライヤー
  • アイテム

アイテムはサプライヤー内にしか存在できず、手動で新しいアイテムを作成できます。

仕入先を作成する際にCSVファイルをアップロードすると、大量のアイテムを作成できるようになりたいです。器用さがこれをサポートする方法はありますか(トリガー、カスタムビュー...)?

4

1 に答える 1

2

カスタムビューでそれを処理する必要があります。それを処理する既存のコードはありません。

単純なケースでは、アップロードされたファイルをcsvモジュールで読み取り、行を使用してSupplierコンテナー内にアイテムを作成します。

from plone.dexterity.utils import createContentInContainer
import csv

reader = csv.reader(uploadedfile)

for row in reader:
    createContentInContainer(supplier, 'your.package.item', title=row[0], ...)

より複雑な操作の場合、 CSV データを器用さのオブジェクトに変換するtransmogrifierパイプラインを構築できますがtransmogrify.dexterity、ここではおそらくやり過ぎです。

于 2013-04-16T13:25:32.860 に答える