Laravel 5 多次调用雄辩的关系并不';t返回数据
我在Laravel5.1中有一个奇怪的行为,当我在同一代码执行中多次调用一个雄辩模型的关系时,第二次它没有数据Laravel 5 多次调用雄辩的关系并不';t返回数据,laravel-5,eloquent,laravel-5.1,Laravel 5,Eloquent,Laravel 5.1,我在Laravel5.1中有一个奇怪的行为,当我在同一代码执行中多次调用一个雄辩模型的关系时,第二次它没有数据 class Items extends Eloquent { public $table = 'items' public function subItems() { return $this->hasMany(Item::class, 'items_id'); } } class Item extends Eloquent {
class Items extends Eloquent {
public $table = 'items'
public function subItems() {
return $this->hasMany(Item::class, 'items_id');
}
}
class Item extends Eloquent {
public $table = 'items_item'
public $fillable = ['items_id'];
}
$items = Items::create();
Item::create([
'items_id' => $items->id,
]);
Item::create([
'items_id' => $items->id,
]);
// works
$first = $items->subItems;
// no data
$second = $items->subItems;
// works
$third = $items->subItems()->get();
这是正常的行为吗?在再次调用关系之前,我是否必须以某种方式重置某些内容?我不知道您重复相同操作的目的。如果$first、$second、$third变量在同一个函数中,请不要重复 而是使用 $first=$items->subItems; $second=$first