Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony2:函数参数问题_Php_Oop_Symfony_Twig - Fatal编程技术网

Php Symfony2:函数参数问题

Php Symfony2:函数参数问题,php,oop,symfony,twig,Php,Oop,Symfony,Twig,在我的模板中,我调用如下函数: loadResults('asc'); function loadResults(order) { return $.get('{{ url('_example_results', { 'order' : ''}) }}'+order, function (html) { $('#results').html(html); }); } public fun

在我的模板中,我调用如下函数:

  loadResults('asc');

  function loadResults(order) {
            return $.get('{{ url('_example_results', { 'order' : ''}) }}'+order, function (html) {
                $('#results').html(html);
            });
        }
 public function resultsAction($order, Request $request)
 {
      // content is not crucial for solving my problem
 }
我的控制器中的函数如下所示:

  loadResults('asc');

  function loadResults(order) {
            return $.get('{{ url('_example_results', { 'order' : ''}) }}'+order, function (html) {
                $('#results').html(html);
            });
        }
 public function resultsAction($order, Request $request)
 {
      // content is not crucial for solving my problem
 }
我的结果未加载,出现以下错误:

Controller "...resultsAction()" requires that you provide a value for the "$order" argument (because there is no default value or because there is a non optional argument after this one).

我需要做哪些调整

因为TWIG在您可以使用js之前呈现页面,所以您无法使用TWIG构建正确的路由。 您可以使用两种方法归档您的问题:

1) 将参数设置为可选,并将其传递给查询字符串,如下所示:

js

loadResults('asc');

  function loadResults(order) {
            return $.get('{{ url('_example_results') }}'+"?order="order, function (html) {
                $('#results').html(html);
            });
        }
控制器

public function resultsAction(Request $request)
 {
      //...
      $order= $request->get('order','asc'); // second parameter is the default if is null 
 }
2) 使用

希望这有帮助