warn('No output file found — nothing to upsert.'); return; } $posts = json_decode(file_get_contents($path), true); foreach ($posts as $post) { Post::updateOrCreate( ['id' => $post['id']], [ 'code' => $post['code'], 'username' => $post['username'], 'full_name' => $post['full_name'], 'caption' => $post['caption'], 'accessibility_caption' => $post['accessibility_caption'], 'is_video' => $post['is_video'], 'is_carousel' => $post['is_carousel'], 'like_count' => $post['like_count'], 'comment_count' => $post['comment_count'], 'taken_at' => $post['taken_at'], 'image_url' => $post['image_url'], 'video_url' => $post['video_url'], 'carousel_images' => $post['carousel_images'], 'profile_pic_url' => $post['profile_pic_url'], ] ); } $this->info('Upserted ' . count($posts) . ' posts.'); } }