У меня есть 3 модели, в которых я использую many to many
отношения
- Пользователь
- Позиция
- UserPosition
Вот мой код где я пытался создать уникальное имя позиции в модели позиции, а затем прикрепить его к пользователю.
Код:
public function createUserPosition()
{
$user = User::find(1);
$user->positions()->detach();
$positions = [
"developer",
"coder",
"singer"
];
$ids = [];
foreach ($positions as $name) {
$position = Position::updateOrCreate(
["name" => $name],
["name" => $name]
);
$ids[] = $position->id;
}
$user->positions()->attach($ids);
dd($user->positions);
}
Можно ли оптимизировать мой код путем сокращения запросов к базе данных