eloquent-has-many-deep: Error 'undefined relationship'

Hi, I found this wonderful package that (theoratically) resolves a big problem but I get an error:

Illuminate\Database\Eloquent\RelationNotFoundException: Call to undefined relationship [ordersPackages] on model [App\Models\Order]

Can someone help me?

Here are my involved models and their relationships:

Order

	/**
	 * @return \Illuminate\Database\Eloquent\Relations\HasMany
	 */
	public function ordersRows()
	{
		return $this->hasMany('App\Models\OrdersRow');
	}

	public function ordersPackages()
	{
		return $this->hasManyDeep(OrdersPackage::class, [OrdersRow::class, OrdersRowPackage::class]);
	}

The problem, obviously, is in ordersPackages()

OrdersRow

	/**
	 * @return \Illuminate\Database\Eloquent\Relations\HasMany
	 */
	public function ordersRowsPackages()
	{
		return $this->hasMany('App\Models\OrdersRowsPackage', 'order_row_id');
	}

OrdersRowsPackage

	/**
	 * @return \Illuminate\Database\Eloquent\Relations\BelongsTo
	 */
	public function ordersRow()
	{
		return $this->belongsTo('App\Models\OrdersRow', 'order_row_id');
	}
	
	/**
	 * @return \Illuminate\Database\Eloquent\Relations\BelongsTo
	 */
	public function ordersPackage()
	{
		return $this->belongsTo('App\Models\OrdersPackage', 'order_package_id');
	}

OrdersPackage

	/**
	 * @return \Illuminate\Database\Eloquent\Relations\HasMany
	 */
	public function ordersRowsPackages()
	{
		return $this->hasMany('App\Models\OrdersRowsPackage', 'order_package_id');
	}

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 17 (7 by maintainers)

Most upvoted comments

Now it works, thanks again!