2012-01-24 37 views
0

在我的模块中,我创建了一个具有验证和提交处理程序的表单。第一个字段是文本输入字段,第二个字段是文件上传字段。Drupal 7表单提交处理程序不执行

我的验证处理程序正在调用并退出罚款。我的提交处理程序从不执行我被带回到我的表单中,错误地抱怨我需要在我的上传字段中输入值(因为我将其设置为必需)。

我是Drupal的新手。

回答

0

在Drupal 6中,不需要文件上传字段。你应该设置required = false,否则你会得到这个错误。我认为它在Drupal 7中是一样的。您应该在验证处理程序中编写自己的代码来检查文件是否已上传。

+1

此外,您可以使用** managed_file **元素类型而不是**文件**,它可以帮助您摆脱所有的上传管理内容。 这里是drupal文档:http://api.drupal.org/api/drupal/developer--topics--forms_api_reference.html/7#managed_file –

+0

managed_file元素的优点是什么?对于这个表单,我正在上传,调用file_save_upload(),取回fid,将其填充到我的form_state中,以便我可以在提交处理程序中处理它。 – vintorg

+0

将字段设置为required = FALSE工作!谢谢! – vintorg

相关问题