bismoney: в fields_for этот параметр не нужен. смотри тогда метод update, скорее всего там проблема. ну и логи тоже смотри, в них больше информации, чем в моих словах
bismoney: возможно проблема в форме, которая использует один и тот же метод при сабмите. попробуй добавить в форму параметр html: {multipart: true}, тогда при edit экшене форма будет использовать метод update, а при new экшене -- create метод
bismoney: ты должен указать параметры модели Option в контроллере как option_attributes: [:author]. в модели Post accepts_nested_attributes_for :option и во вьюхе, после перечисления форм для модели Post, добавить поле = f.fields_for :option do |o|. а да, еще не забудь в контроллере сделать билд ассоциативного объекта: post = Post.new post.build_option
LittleFatNinja: ну мужик, для этого нужно использовать готовые решения, а не костылировать. Посмотри на код умных дядек и увидишь, что никто так не пишет. Вообще, вставлю еще 5 копеек. Зачем ты пишешь еще один фреймворк? Если ты учишься, то лучший способ - это учиться на коде взрослых умных дядек. А на своем коде ты не узнаешь о том, что такое best practices, что такое TDD/BDD ну и прочие умные слова и аббревиатуры. Я тебе не подскажу у кого код подсматривать, думаю и сам справишься. Мир ✌️