Initial commit
'foo[]' and Foo.new

foos[foo][][id] + 2 * foos[foo[]][bar][][id]

works, got params with:
foos: {
  foo: [
        { id: "F1",
          bar: [
                { id: "B1" },
                { id: "B2" }
               ],
	}
       ]
}
foo, index: nil and Foo.new

foos[foo][][id] & 2 * foos[foo][bar][][id]
Fails with "expected Hash (got Array) for param `foo'"
'foo[]' and Foo.create

foos[foo][1][id] = 1 + foos[foo[]][bar][1][id] = 1 + foos[foo[]][bar][2][id] = 2
expected Array (got Rack::Utils::KeySpaceConstrainedParams) for param `foo'
foo, index: nil and Foo.create
foos[foo][][id] = 1 + foos[foo][bar][][id] = 1 + foos[foo][bar][][id] = 2
expected Hash (got Array) for param `foo'