Если вы следуете методологии REST, то у вас post_id не в $data, а прямо в URL.
И тогда метод контроллера будет выглядеть примерно так:
public function save(Post $post, Request $request) {
$fields = $request->only(['field', 'other_field']);
$post->comments()->save($fields);
}
Согласитесь, такой код гораздо проще читать? Самое главное в комментарии - это его связь с какой-то сущностью, даже не содержимое. Комментария не может быть без поста, поэтому и плясать нужно от поста.
Первый способ - процедурный. Связь между сущностями описана в "магическом" поле в каком-то массиве. Он имеет право на существование в каких-то технических консольных скриптах, например (и то не всегда).
Второй - объектно-ориентированный и легче читается. Этот код очень хорошо коррелирует с методологией REST, когда мы оперируем сущностями, а не массивами и абстрактными объектами.