Rails 2 - 为param预期Hash(得到数组)

时间:2013-01-24 21:18:17

标签: ruby-on-rails

所以在HTML中如果我做了这样的表格:

<form method="post">
<input type="text" name="categories[][name]" />
<input type="text" name="categories[][name]" />
<input type="text" name="categories[][name]" />
<input type="text" name="categories[][name]" />
<input type="submit" value="submit" />
</form>

我希望params[:categories]

[{"name"=>"value"},{"name"=>"value"},{"name"=>"value"},{"name"=>"value"}]

但是,rails 2会引发一个TypeError:param的预期Hash(得到数组)

此处引发错误:

http://apidock.com/rails/Rack/Utils/normalize_params

为什么在rails中不允许或不可解析?我错过了什么?

我知道我可以像这样索引输入

<input type="text" name="categories[0][name]" />
<input type="text" name="categories[1][name]" />
<input type="text" name="categories[2][name]" />
<input type="text" name="categories[3][name]" />

得到一个哈希。但这似乎适得其反。

1 个答案:

答案 0 :(得分:3)

你必须颠倒下标顺序:

<input type="text" name="categories[name][]" />