表单重定向到page / form_action_cc611e1d

时间:2016-09-07 13:52:46

标签: drupal-8

我安装了contact_storage模块,因此我可以在填写表单时设置重定向路径,每当我填写表单时,它显然会忽略我填写到重定向路径字段中的任何内容并将我发送到“/ form_action_cc611e1d”。

我不知道它来自哪里,我在代码中找到的唯一参考是在BigPipe核心模块中,除了这个模块在我的项目中没有激活。

我已经清除缓存100次,但无济于事。有谁知道如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

似乎重定向只发生在我的表单的hook_form_FORM_ID_alter()中附加一个js库时,这个js添加了一些html(没有表单控制只是一些div)和一些点击处理程序。

这只发生在我们的6个模板中的1个中,但是必须有其他干扰,不幸的是我没时间进一步调查这个。

要修复表单,我只需将请求uri再次添加到表单中:

 function schade_forms_alter(&$form, \Drupal\Core\Form\FormStateInterface $form_state, $form_id){

    //attach JS
    $form['#attached'] = array(
      'library' => array(
        'insusite_forms/form',
      ),
    );

    //to prevent the form from redirecting to /form_action_cc611e1d after submit add the action link
    $form['#action'] = \Drupal::request()->getRequestUri();
  }
}