Совет: не позволяйте ошибке проходить полностью незаметно — измените это на:
if post.nil?
puts "!!! Не удалось найти пост #{id}"
return nil
end
Иначе вы можете задаться вопросом, почему исчезла половина ваших постов, и после часов разочарования выяснится, что причина именно в этом.
То же самое относится к этим двум строкам:
next, если post.nil?
next, если post["deleted"] == "1"