Проблема в том что вы не создаете много объектов Photo каждый с одной картинкой (как вы описали в вашей модели), а создаете один Photo и пытаетесь воткнуть в него несколько файлов картинок
Чтобы все работало так как вы хотите вам нужно
1) В форме иметь просто одно поле с картинками, не забудьте его разрешить для strong parameters
= form_for [:admin, @post], html: { multipart: true } do |f|
= f.file_field :images, multiple: true
2) В методе контроллера перебрать массив params[:images] и для каждого изображения создать свой объект Photo и привязать его к родительскому Post
params[:images].each do |image|
@post.photos.build(image: image)
end