и Post.php которые связаны друг с другом, а так же их таблицы в бд.
У меня есть Event & Listener на то что, если появляется новая запись в модельке Post.php, то срабатывал listener.
Вот фрагмент кода в listeners:
foreach ($foundTags as $tagId) {
PostTag::create([
'post_id' => $post->id,
'tag_id' => $tagId,
]);
}
то есть тут добавляется тег в таблицу post_tags, а именно:
создается пост => срабатывает ивент => получаю id-поста и id-тега и сохраняю его в таблицу.
Вызываю свой слушатель в модельке Post.php:
protected $dispatchesEvents = [
'created' => PostUpdatedOrCreated::class,
];
Когда при сохранении нового поста я ставлю dd($foundTags, $tagId) то все данные приходят и сохраняются, но когда убираю dd() то данные не сохраняются и даже не приходит id-поста, видимо мой event срабатывает быстрее чем пост успевает сохранится, как я могу сделать так чтобы пост сначала создался и я мог получить его id и только потом запускать свой event ?
а как в Observer попадает информация о добавленных тегах
Обсуждают сегодня