默认的敏捷添加表单注册了保存按钮和处理程序,因此:
@button.buttonAndHandler(_('Save'), name='save')
def handleAdd(self, action):
data, errors = self.extractData()
if errors:
self.status = self.formErrorsMessage
return
obj = self.createAndAdd(data)
if obj is not None:
# mark only as finished if we get the new object
self._finishedAdd = True
IStatusMessage(self.request).addStatusMessage(
self.success_message, "info"
)
如何用我自己的处理程序覆盖(仅)处理程序?我宁愿只注册一些适配器,但如果注册子类自定义表单是唯一的选择,那么这也是可以接受的。