Настройка:
- PHP 7.4.5
- Laravel 7.7.1
- SQL Сервер
В проекте, в котором я сейчас участвую, используется отношение M: M для сопоставления отношений между заказами по различным типам отношений.
Я установил несколько отношений по следующему шаблону для различных типов отношений:
class Order extends Model
{
/**
* Set up a relationship on the OrderRelationship table.
*
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
*/
protected function parents()
{
$relationship = new OrderRelationship();
return $this->belongsToMany(
static::class,
$relationship->getTable(), // 'OrderRelationships'
'OrderId',
'RelatedOrderId'
)->wherePivot('RelationshipTypeId', RelationshipType::TYPE_PARENT);
}
}
Однако при использовании $order->parents()->attach($parentOrder);
поле RelationshipTypeId
установлено на NULL
.
Есть ли способ заставить его соблюдать конфигурацию wherePivot
?