我创建了一个类IAgenda并设置了value_type = schema.Datetime()并且它可以工作。我可以在议程对象中添加日期时间列表
class IAgenda(model.Schema):
dates = schema.List(
title=_(u"label_dates", default=u"Dates"),
description=_(u"help_dates", default=u"Enter dates"),
value_type=schema.Datetime(),
required=True,
)
但是当我尝试在日期上使用类IInterval时,我在保存时遇到错误:' unicode'对象没有属性'年'。
class IInterval(Interface):
start = schema.Datetime(
title=_(u"label_start", default=u"Start"),
description=_(u"help_start", default=u"Enter a start date"),
required=True,
)
end = schema.Datetime(
title=_(u"label_end", default=u"End"),
description=_(u"help_end", default=u"Enter an end date"),
required=True,
)
class IAgenda(model.Schema):
dates = schema.List(
title=_(u"label_dates", default=u"Dates"),
description=_(u"help_dates", default=u"Enter dates"),
value_type=schema.Object(IInterval),
required=True,
)
如果我将开始和结束字段更改为Int,则会出现另一个错误:"系统无法处理给定值"。 那么,使用dexterity / forms添加自定义对象列表的正确方法是什么?