我在 Drupal 7 中为单一内容类型提供了多个表单。这样做的目的是在用户提交表单时启动不同的工作流,具体取决于包含的信息类型,并由每个 /url 定义。这些表单位于不同的页面上,每个页面上显示的字段都在自定义模块中定义。例如:
.../form1 启动工作流 1 并显示字段 a、b、e、f、g
.../form2 启动工作流 2 并显示字段 a、b、c、e、h
.../form3 启动工作流 3 并显示字段 a、b、f、x、y
在这个模块中,它看起来像这样:
function my_custom_module_custom_form() {
// Build Form
$form = getForm('content_type');
switch (strtolower($form['#action'])):
case('/form1'):
$form['field_some_field']['#access'] = FALSE;
switch (strtolower($form['#action'])):
case('/form2'):
$form['field_other_field']['#access'] = FALSE;
我希望每个表单都有一个页面模板,因此我可以指定每个表单的内容,而不是显示/隐藏模块中每个字段的每个字段,考虑到字段的数量,这很麻烦。
我可以为每个表单创建一个页面模板并链接提交按钮以触发模块中的特定操作吗?
注意:添加依赖项或使用单独的内容类型不适用于我们的用例。如果上面的代码有错误,只是我在这里给出了一个简单的例子,实际的模块可以工作。
谢谢您的帮助!