サーチ…


前書き

Laravelバージョン5.4.8のEloquent Relationshipの新機能があります。私たちはhasMany(それは単なる一例です)関係の単一のインスタンスをフェッチすることができます。これは、それを定位置で定義することで、すべての関係

hasMany関係の1つのインスタンスを取得できます

私たちのAppServiceProvider.php

public function boot()
{
  HasMany::macro('toHasOne', function() {
      return new HasOne(
          $this->query,
          $this->parent,
          $this->foreignKey,
          $this->localKey
      );
  });
}

私たちはショップモーダルを持っており、購入した製品のリストを取得しているとします。 ShopモーダルのAllPurchasedリレーションシップがあるとします

public function allPurchased()
{
    return $this->hasMany(Purchased::class);
}

public function lastPurchased()
{
    return $this->allPurchased()->latest()->toHasOne();
}


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow