首先,我是这个项目的新手,它的原始开发是外包的。男孩,这个项目几乎是所有东西的变通方法和非 Drupal 实现的混乱。如果没有跨每个自定义模块的大量工作,这个项目是不可能升级的。开发人员可以使用 CCK 处理他们所做的 95% 的工作,他们将许多表添加到数据库中,并使用 Drupal 表单来填充它们。
我们的客户想要一个新的“画廊”管理界面到这些特殊的桌子之一。我们需要一种方法来拥有一个重复的字段集,例如:
gallery[0][image] // can be either link or url
gallery[0][caption]
Drupal 6 不支持开箱即用的重复字段,所以看起来我必须要么:安装一个模块,要么自己想出一个陪审团操纵的解决方案。但是从我对 Drupal 的了解来看,如果我做得对的话,我应该能够使用常规表单和一些 Javascript 来实现它。
// Just an example, this isn't working code.
$index = 0;
foreach ($gallery as $id => $data) {
$form['gallery'][$index]['id'] = array(
'#type' => 'hidden',
'#value' => $id,
);
$form['gallery'][$index]['image'] = array(
'#type' => 'upload',
);
$form['gallery'][$index]['caption'] = array(
'#type' => 'textbox',
'#value' => $data['caption']
);
$form['gallery'][$index]['delete'] = array();
$index += 1;
}
然而,我如何将类似于此的表单与绑定到表单状态的 Javascript“添加更多”链接联系起来?以及如何处理这种表单输入的结果?