Я использую select2 для выбора тегов в своем сообщении, но я хотел бы реализовать функцию тегов. Я могу сохранить новые теги, но застрял, связывая тег с сообщением в моей сводной таблице.
SQLSTATE [HY000]: общая ошибка: 1366 Неверное целочисленное значение: «велосипед»
для столбца 'tag_id' в строке 1 (SQL: вставить в post_tag
(post_id
,
tag_id
) значения (167, байк))
$post = new Post;
$post->post_category_id = $request->post_category_id;
$post->title = $request->title;
$post->body = $request->body;
$post->meta_description = $request->meta_description;
$post->slug = $request->slug;
$post->user_id = auth()->id();
$tags = $request->input('tags');
foreach ($tags as $tag) {
if (is_numeric($tag)) {
$tagArr[] = $tag;
} else {
$newTag = Tag::create(['name' => $tag]);
$newTag = $newTag->id;
}
}
$post->save();
$post->featured()->sync($request->featured, false);
$post->tags()->sync($request->tags, false);
Session::flash('success', 'The blog post was saved successfully!');
return redirect()->route('posts.show', $post->id);
Я знаю, что могу заменить tag_id
на строку, но мне было интересно, есть ли другой способ обойти это.