【问题标题】:Rails params should read an arrayRails 参数应该读取一个数组
【发布时间】:2013-11-13 21:22:17
【问题描述】:

我的问题很简单,我有一个普通的 HTML 表单(没有助手,没有模型),我想发送参数,所以 params 字典看起来是一个数组。

这是我的代码:

<div class="headers_line">
  <div class="header_field">
    <input type="text" placeholder="Header name" name="header[0][name]" class=
    "parameter_input" />
  </div>

  <div class="header_field">
    <input type="text" placeholder="Value" name="header[0][value]" class=
    "parameter_input" />
  </div>
</div>

<div class="headers_line">
  <div class="header_field">
    <input type="text" placeholder="Header name" name="header[1][name]" class=
    "parameter_input" />
  </div>

  <div class="header_field">
    <input type="text" placeholder="Value" name="header[1][value]" class=
    "parameter_input" />
  </div>
</div>

<div class="headers_line">
  <div class="header_field">
    <input type="text" placeholder="Header name" name="header[2][name]" class=
    "parameter_input" />
  </div>

  <div class="header_field">
    <input type="text" placeholder="Value" name="header[2][value]" class=
    "parameter_input" />
  </div>
</div>

这就是我的参数的样子:

"header"=>{"0"=>{"name"=>"jnjnnj", "value"=>"nnjjn"}, "1"=>{"name"=>"jnnjjn", "value"=>"jnjnnj"}, "2"=>{"name"=>"jnjnjnjn", "value"=>"jnnj"}, "3"=>{"name"=>"", "value"=>""}}

尝试使用 header[][name] 和 header[][value] 也没有用。

谢谢

【问题讨论】:

  • 几乎,它会生成一个名称数组和另一个值,但更好的是: "header"=>{"name"=>["ijijjijijij", "ijadsijdasij", "adsadjsiiadjsjidsa", " jidadisjajdisai", ""], "值"=>["ijsijdsaijadsij", "ijdasjidasijij", "jadisidjsajidsaji", "sajidsji", ""]}
  • 您是否尝试平展散列以摆脱“0”、“1”键等?这就是你想要达到的目标吗?
  • 我想实现:params[:header] 成为 {name: '2323', value: '123'}的数组

标签: html ruby ruby-on-rails-3 params


【解决方案1】:

对不起,我对上一个答案完全感到困惑。

params[:header].values.map(&amp;:symbolize_keys) 会给你你想要的数组。

你不能直接得到它。

【讨论】:

    【解决方案2】:

    好的,根据@house9 的评论,我做了以下事情:

    我用过header[name][]header[value][]

    然后我创建了一个哈希数组:

    headers = params[:header][:name].zip(params[:header][:value])
    

    【讨论】:

      猜你喜欢
      • 2019-10-23
      • 2018-01-20
      • 2023-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-09
      相关资源
      最近更新 更多