Collective.z3cform を使用して、Dexterity コンテンツ タイプに datagridfield があります。コンテンツ タイプのメイン データグリッド フィールドの value_type を DictRow として定義するインターフェイス クラスがあります。
class IAssessment(interface):
assessment_item=schema.Choice(
title=u"Assessment Item",
values=[u"Item 1",u"Item 2"],
required=False
)
reference=schema.TextLine(title=u"Reference",required=False)
class Application(form.Schema,IImageScaleTraversable):
form.widget(app_assessment=DataGridFieldFactory)
app_assessment=schema.List(
title=u"Application Assessment",
value_type=DictRow(title=u"Application Assessment",schema=IAssessment)
)
他のコンテンツ タイプの portal_catalog を使用したカタログ クエリに基づいて、assessment_item フィールドの下に IAssessment の値を指定することは可能ですか。コンテキストが定義されていないため、catalog=getToolByName(context, 'portal_catalog') を挿入するとエラーが発生しました。IAssessment にパラメーター コンテキストを配置しても、同じエラーが発生します。インターフェイス クラスでカタログ クエリを実行する方法はありますか?