Symfony 3.4 - jQuery AJAX请求在控制器中找不到结果

时间:2018-01-15 23:13:08

标签: jquery ajax symfony symfony-3.4

目前,我在一个项目上工作,我尝试从AJAX请求获取数据,该方法是" POST"。

这是我的JS代码:

function ajax() {
    var form = new FormData();
    // Data from contenteditable which is id is "title".
    form.append('article[title]', $('#title').html().trim());
    // Data from contenteditable which is id is "content".
    form.append('article[content]', $('#content').html().trim());
    // Data from input checkbox which is id is "article_parution".
    form.append('article[parution]', $('#article_parution').val());
    // Data from input hiden which is id is "article__token".
    form.append('article[_token]', $('#article__token').val());

    $.ajax({
        method: "POST",
        url: '{{ path("add_article") }}', // /admin/add
        processData: false,
        cache: false,
        data: form
    })
}

我用过" console.log()"验证数据是否存在,情况就是这样。

问题是当我尝试在我的控制器中使用它时:

$title = $request->request->get('article[title]');

$ title为null,为什么?

此外,此网址(/ admin / add)位于网站上 FosUserBundle 的受保护区域内(用户必须以管理员身份连接才能访问此网站部分)。

1 个答案:

答案 0 :(得分:1)

您可以转储您的请求以查看必须获取的内容

dump($request->request);

我认为解决方案是

$request->request->get('article')['title'];

您还可以添加''在您的文章['标题']在Javascript中