如何在 Laravel 4 中手动创建一个新的空 Eloquent 集合

新手上路,请多包涵

我们如何在 Laravel 4 中创建一个新的 Eloquent 集合,而不使用 Query Builder?

有一个 newCollection() 方法可以被它覆盖并不能真正起作用,因为它只在我们查询集合结果时使用。

我正在考虑构建一个空集合,然后用 Eloquent 对象填充它。我不使用数组的原因是因为我喜欢 Eloquent Collections 方法,例如 contains

如果还有其他选择,我很想听听他们的意见。

原文由 JofryHS 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
2 个回答

这并不是真正的 Eloquent,要将 Eloquent 模型添加到您的集合中,您有一些选择:

Laravel 5 中,您可以从助手中受益

$c = collect(new Post);

或者

$c = collect();
$c->add(new Post);

旧 Laravel 4 答案

$c = new \Illuminate\Database\Eloquent\Collection;

然后你可以

$c->add(new Post);

或者你可以使用make:

 $c = Collection::make(new Post);

原文由 Antonio Carlos Ribeiro 发布,翻译遵循 CC BY-SA 3.0 许可协议

我正在使用这种方式:

 $coll = new Collection();

$coll->name = 'name';
$coll->value = 'value';
$coll->description = 'description';

并将其用作正常的 Collection

dd($coll->name);

原文由 Hyzyr 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题