我有一个场景,团队领导输入他的团队成员的姓名和电子邮件id。我想将团队规模限制在最多10人。我正在考虑使用Field Collection模块来捕获团队成员的姓名和电子邮件值。我发现的是,这个模块提供了"添加更多项目"按钮,只有当我选择"无限"在"值的数量"字段为这个集合。如果我选择"Number of values"为10,它会显示10倍的"Name"one_answers"Email"。我想要的是,它应该显示1组"名称"one_answers"电子邮件"字段,旁边应该是"添加更多"按钮,这将显示下一个"名称"one_answers"电子邮件"字段集等等,直到计数达到10(在我的情况下)。
有谁可以帮助我这个或建议我与一些其他模块。
找到了我的问题的解决方案。在"Number of values"字段中选择"Unlimited"进行字段收集,并在hook_form_alter中编写如下代码。"Add more"
显示了10次
if($form_id == 'form_id') {
if (isset($form['field_collection_name']['und']['#max_delta']) && $form['field_collection_name']['und']['#max_delta'] >= 10) {
unset($form['field_collection_name']['und']['add_more']);
}
}
似乎这是Webform添加更多模块的完美场景。
除非您确实需要内容类型,否则我建议您使用Webform。你可能需要安装Webform模块作为一个依赖项,它可以让你快速创建你想要的表单。
另一个解决方案是使用Custom Add Another模块https://www.drupal.org/project/custom_add_another来自定义按钮文本,其好处是您可以为每个bundle的每个字段设置不同的文本。