You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何向Laravel Eloquent空集合中添加Place实例?

向Eloquent集合添加Place实例的方法

针对你的场景,有两种常用方式,根据是否需要持久化数据选择:

1. 仅临时添加到集合(不保存到数据库)

如果只是需要在内存中的集合里添加Place实例,直接使用Eloquent Collection的push()方法即可:

// 创建Place实例(可根据需求设置属性)
$place = new Place();
$place->attribute = "属性值";

// 向$sample->places集合中添加实例
$sample->places->push($place);

另外add()方法也能实现同样效果,和push()功能一致。

2. 持久化关联数据(同时保存到数据库)

如果Sample和Place是Eloquent关联关系(比如一对多的hasMany),推荐使用关联方法来添加,这样会自动处理外键并保存数据:

一对多关联场景(Sample hasMany Place)

// 假设Sample模型中已定义关联:
// public function places()
// {
//     return $this->hasMany(Place::class);
// }

// 创建Place实例并设置属性
$place = new Place(['attribute' => "属性值"]);

// 通过关联保存并添加到集合
$sample->places()->save($place);

多对多关联场景(Sample belongsToMany Place)

如果是多对多关系,使用attach()方法:

// 若Place已保存到数据库,传入ID即可
$sample->places()->attach($place->id);

// 也可以直接传入实例
$sample->places()->attach($place);

内容的提问来源于stack exchange,提问作者bcag2

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 17:41:11