Возможно, у вас есть столбец с именем "category_id" в вашей таблице сообщений, но в этом сценарии вы пытаетесь установить идентификатор для столбца с именем "category", который, вероятно, не существует в вашей таблице.
Попробуйте изменить 'category' на 'category_id':
postCreateUpdate.blade. php
<div class="form-group">
<label for="category">Category</label>
<select name="category_id" id="category_id" class="form-control">
@foreach ($categories as $category)
<option value="{{ $category->id }}"
@if (isset($posts))
@if($category->id == $posts->category_id)
selected
@endif
@endif
>
{{ $category->name }}
</option>
@endforeach
</select>
</div>
PostController. php
public function update(UpdatePostRequest $request, Post $post)
{
$data = $request->only(['title','description','content','published_at','category_id']);
if($request->hasFile('image')){
$image = $request->image->store('posts');
$post->deleteImage();
$data['image'] = $image;
}
$post->update($data);
session()->flash('success','Post Updated Successfully');
return redirect(route('post.index'));
}