请求冲突symfony行动

时间:2015-10-05 09:40:23

标签: php jquery ajax forms symfony

我有一个调用控制器中的动作的Ajax调用。

Ajax调用看起来像这样

$(document).on('click', '.editQuestionButton', function() {
    var question_id = $(this).data('question');
    console.log(question_id);

    $.ajax({
        type: "POST",
        url: "/dashboard/form/AjaxEditQuestionForm/" + question_id + "",
        success: function(data) {
            $('#form-modal').html(data);
        }
    });

});

$(document).on('click', '.modal .fn-submit', function() {
    $(this).closest('.modal').find('form').submit();
});

这就是行动。

/**
     * @Route("/AjaxEditQuestionForm/{question}")
     * @Template
     * @ParamConverter("question", class="AppBundle:Question")
     */
    public function ajaxEditQuestionFormAction(Request $request, $question)
    {
        $edit_question_form = $this->createForm(new AddQuestionType(), $question);

        $edit_question_form->handleRequest($request);

        if ($edit_question_form->isValid()) {

            $em->flush();

            return $this->redirectToRoute('app_form_create');
        }
        else{
          die();
        }


        return array(
          'question' => $question,
          'editAjaxQuestionForm' => $edit_question_form->createView(),
        );
    }

问题是该操作永远不会返回表单,而是直接检查表单是否有效。 我认为这与$request有关,但我不知道如何改变它。

操作应首先从Ajax调用中获取数据,返回表单,如果表单已提交,请检查表单是否有效并刷新Question实体。

关于我应该怎么做的任何想法?

0 个答案:

没有答案