Laravel-datatables: 在Datatables.php中为foreach()提供了无效的参数(第57行)

创建于 2018-04-17  ·  9评论  ·  资料来源: yajra/laravel-datatables

问题或功能要求摘要

调用anyData路由时出错。 通过网络检查器,我清除了php artisan缓存。

ErrorException为foreach()提供了无效的参数

在Datatables.php中(第57行)

问题的代码段

路线:

Route::get('/datatable','DatatablesController<strong i="11">@getIndex</strong>');
Route::get('/anyData','DatatablesController<strong i="12">@anyData</strong>')->name('datatables.data');

<?php

namespace App\Http\Controllers;


use Yajra\Datatables\Datatables;
use Illuminate\Support\Facades\DB;

class DatatablesController extends Controller
{
    /**
     * Displays datatables front end view
     *
     * <strong i="13">@return</strong> \Illuminate\View\View
     */
    public function getIndex()
    {
        return view('reports.testdatatable');
    }

    /**
     * Process datatables ajax request.
     *
     * <strong i="14">@return</strong> \Illuminate\Http\JsonResponse
     */
    public function anyData()
    {
       return Datatables::of(User::query())->make(true);
    }

}

系统详情

  • 操作系统MAC OS 10.11
  • PHP版本7.2
  • Laravel 5.4版
  • Laravel-Datatables版本7.3
need feedback question

最有用的评论

只需清除laravel的配置缓存。
PHP的工匠配置:缓存

所有9条评论

您的代码看起来不错。 但是,看来您的版本可能未更新? Datatables.php适用于afaik以下的v6.0吗? 请仔细检查您的版本是否正确?

我面临着同样的问题。

我刚刚升级到版本8,具有:
composer require yajra/laravel-datatables-oracle:8.*
php artisan vendor:publish --tag=datatables --force

但我仍然收到错误:

DataTables.php第51行中的ErrorException:
为foreach()提供了无效的参数

请指教

@ painter10基于错误日志第51行,新的datatables.php配置可能不会被覆盖。 也许尝试手动删除配置,然后再次发布。

$builders = config('datatables.builders');
...
foreach ($builders as $class => $engine) {...

如果尚未检查,还请参见https://yajrabox.com/docs/laravel-datatables/master/upgrade

感谢您的建议。 我认为问题在于,我确实按照《快速入门》教程进行操作,因此有必要修改设置,即:
我必须在Bootstrap /缓存中删除config.php文件,然后在config / app.php中将其更改
从:
Yajra \ Datatables \ DataTablesServiceProvider :: class,
至:
Yajra \ DataTables \ DataTablesServiceProvider :: class,
现在anyData()似乎可以工作了。
但是,Im仍在努力在数据表中显示记录。 仅标题可见。

只需清除laravel的配置缓存。
PHP的工匠配置:缓存

@AmirKaftari我可以通过清除laravel缓存来解决此问题。 谢谢!

@AmirKaftari所有赞美归功于阿拉,我用“ php artisan config:cache”完成了问题
谢谢大家。

@AmirKaftari Masha Allah,非常感谢

@AmirKaftari谢谢

此页面是否有帮助?
0 / 5 - 0 等级