嵌套字段元素的Drupal验证


Drupal validation for nested field element

我有一个drupal表单用于保存详细信息,我为表单中的每个元素编写了验证。以下方法用于显示错误。然后它会自动突出显示所需的字段。

form_set_error('field_athletes_male', 'Athletes Male field is required.'); 

我的问题是有嵌套的元素名称,如下

field_coaching_programme[und][0][field_organisation_delivered_by][und][0][value]

验证消息已成功显示,但元素未突出显示

您正在寻找的答案可能已经在文档中了。

以下是相关部分:

$name:表单元素的名称。如果您的form元素是数组('fo','bar','baz'),那么您可能会设置一个错误在"foo"或"foo][bar][baz"上。在"foo"上设置错误会设置错误对于#parents数组以"foo"开头的每个元素。

因此,您应该尝试执行以下操作:

form_set_error("field_coaching_programme][field_organisation_delivered_by", t("Error Message"))

尝试了以下代码并按预期工作

form_set_error('field_coaching_programme][und][0][field_organisation_delivered_by', 'Organisation delivered by field is required.');