Php Laravel-雄辩的对象和数组

Php Laravel-雄辩的对象和数组,php,arrays,laravel-4,Php,Arrays,Laravel 4,希望对数组块使用Elount,但遇到了第一个参数需要是数组的错误 这就是我做事的方式: public function index() { $externalAccounts = ExternalUserAccount::all(); return View::make('user_creator.index', compact('externalAccounts')); } 那么在我看来, @foreach (array_chunk($externalAccounts, 4)

希望对数组块使用Elount,但遇到了第一个参数需要是数组的错误

这就是我做事的方式:

public function index() {
    $externalAccounts = ExternalUserAccount::all();
    return View::make('user_creator.index', compact('externalAccounts'));
}
那么在我看来,

@foreach (array_chunk($externalAccounts, 4) as $key => $externalAccount)
    <div class="form-group">
        {{ Form::label($externalAccount->name, $externalAccount->display_name) }}
        {{ Form::checkbox($externalAccount->name, $externalAccount->id) }}
    </div>
@endforeach
然后我得到“尝试获取非对象的属性等”错误


我应该怎么做呢?

这还没有经过测试,但是看看Laravel文档,你最好的选择是使用Laravel雄辩的ORM来做,并删除视图中的过滤

$externalAccounts = ExternalUserAccount::all()->take(4)->get();

以下代码应该可以工作:

$externalAccounts = ExternalUserAccount::all()->toArray();
ExternalUserAccount::all()调用应返回一个“Collection”对象,默认情况下,该对象实现ArrayableInterface,该接口提供“toArray()”方法

确保:

1) ExternalUserAccount类扩展了\elount类

2) ExternalUserAccount::all()的结果是“Illumb\Database\Eloquent\Collection”类型的对象。您可以使用以下方法验证:

dd(ExternalUserAccount::all());
dd(ExternalUserAccount::all());