Недопустимые параметры для динамических форм в Rails 4

Я новичок в Rails и построил что-то на основе этого

http://railscasts.com/episodes/403-dynamic-forms

но у меня проблема с хранением данных в дополнительных полях ... У меня есть объект ProductType, который имеет много объектов ProductField. Объект ProductField также принадлежит ProductType, а объект Product принадлежит ProductType.

Итак, новые динамические поля могут быть легко добавлены через конструктор ProductType, но когда я пытаюсь установить данные в этих полях через контроллер продукта, ничего не происходит.

Я уверен, что проблема связана с использованием сильных параметров, но исправление описаноВот а такжеВот не помогло

product.rb

class Product < ActiveRecord::Base
    belongs_to :product_type
    serialize :properties, Hash
end

product_type.rb

class ProductType < ActiveRecord::Base
    has_many :fields, class_name: "ProductField"
    accepts_nested_attributes_for :fields, allow_destroy: true
end

product_field.rb

class ProductField < ActiveRecord::Base
    belongs_to :product_type
end

products_controller.rb

class ProductsController < ApplicationController
    def new
    @product = Product.new(product_type_id: params[:product_type_id])
    end
    def product_params
    params.require(:product).permit(:name, :price, :product_type_id, {:properties => []})
    end

product_type_controller.rb

class ProductTypesController < ApplicationController
    def product_type_params
    params.require(:product_type).permit(:name, fields_attributes: [:id, :name, :field_type, :required, :product_type_id])
    end

В журнале консоли: недопустимые параметры: свойства

Started PATCH "/products/4" for 127.0.0.1 at 2013-10-04 22:54:59 +0400
Processing by ProductsController#update as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"my3ra60OUXexmmguk2eqRetizx3tWPMq04Z2PnODJMQ=", "product"=>{"product_type_id"=>"1", "name"=>"Product1", "properties"=>{"gjfghjf"=>"123", "123"=>[""]}, "price"=>"10"}, "commit"=>"Update Product", "id"=>"4"}
Product Load (0.3ms)  SELECT "products".* FROM "products" WHERE "products"."id" = ? LIMIT 1  [["id", "4"]]
Unpermitted parameters: properties

П.С .: Может, кто-то сталкивался с подобной проблемой при просмотре подкаста?

Ответы на вопрос(1)

Ваш ответ на вопрос