当前位置: 首页 > 知识库问答 >
问题:

如何在Laravel 4中手动创建新的空雄辩集合

郭俊人
2023-03-14

如何在不使用查询生成器的情况下,在Laravel4中创建一个新的雄辩的集合?

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

我在考虑建立一个空的集合,然后用有说服力的对象填充它。我不使用数组的原因是因为我喜欢雄辩的集合方法,比如contains

如果还有其他选择,我很乐意听听。

共有3个答案

顾磊
2023-03-14

事实上,我发现使用newCollection()更能证明未来。。。。

示例

$collection = (new Post)->newCollection();

这样,如果您决定在稍后阶段为您的模型创建自己的集合类(就像我已经做过几次的那样),重构代码要容易得多,因为您只需覆盖模型中的newCollection()函数

刘令
2023-03-14

从拉雷维尔5号开始。我使用全局函数collect()

$collection = collect([]); // initialize an empty array [] inside to start empty collection

这个语法非常干净,如果你不想要数字索引,你也可以添加偏移量,比如:

$collection->offsetSet('foo', $foo_data); // similar to add function but with
$collection->offsetSet('bar', $bar_data); // an assigned index
钱震博
2023-03-14

这不是真正的雄辩,要在你的收藏中添加雄辩的模型,你有一些选择:

在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);
 类似资料:
  • 问题内容: 插入新记录或更新(如果存在)的快捷方式是什么? 问题答案: 这是“ lu cip”正在谈论的完整示例: 以下是Laravel最新版本上的文档更新链接 此处的文档:更新的链接

  • 我想创建动态laravel类,以便动态调用查询。这是我的密码 但是当我试图调用这个类以便使用这个代码创建一个对象时 我得到这个错误 函数App\CRUD::uu construct()的参数太少,在第1630行的/var/www/html/logging/vendor/laravel/framework/src/illighte/Database/Eloquent/Model.php中传递了0,至

  • 这可能是一个无关紧要的问题,但我想知道Laravel是否推荐某种方法来检查从

  • 我有一个名为的雄辩模型,链接到一个名为的数据库表。 是否有一个雄辩的函数可以让我从数据库中提取一个随机问题(或一组随机问题)?如下所示: 或者

  • 我正在用Laravel 5.2开发一个Web应用程序,但有一个问题我无法解决。 我有一个扩展了雄辩模型的模型,但当我试图输出带有“where”的数据库表时,例如 它返回一个包含许多信息的集合,这些信息此时对我来说无用,比如“守卫”、“键入”...我的表的数据在“属性”下。遵循laravel的指南,我看到每个人都像我一样简单地使用它,然后用

  • 假设我在表中有7列,我想只选择其中的两列,类似这样 在laravel雄辩的模型中,它可能是这样的 但我猜这个表达式将选择id等于1的所有列,我只需要两列(名称、姓氏)。如何只选择两列?