【问题标题】:Text fields from array in RailsRails中数组中的文本字段
【发布时间】:2011-08-09 06:16:50
【问题描述】:

我正在尝试使用 Rails 2.3 为数组生成一组文本字段。我的控制器中有一个数组(它不是模型的 部分),我想为每个条目创建一个文本字段。数组是这样的:

@ages = [1, 3, 7] # defaults

然后,我想在我的视图中生成 3 个文本字段,其值为 1、3 和 7,并在提交时用用户的值填充数组。

我在 Google 和这里​​找到了很多东西,但似乎没有一个适合我。我确信这在 Rails 中很容易......

【问题讨论】:

  • 所以你想要每个值的 text_field 和 text_area ?
  • 糟糕...这两个地方都应该是文本字段。已修复...谢谢!

标签: ruby-on-rails formbuilder textfield


【解决方案1】:

Rails 可以序列化集合,这应该会更容易。

如果您在视图中将输入命名为“field[]”,如下所示:

<% @ages.each do |age| %>
  <%= text_field_tag 'ages[]', age %>
<% end %>

然后您可以在提交时访问控制器中的所有“年龄”:

@ages = params[:ages]  # ['1', '3', '7']

【讨论】:

  • 随机问题。为什么 :ages 被传递给 params 而不是 ControllerName_params?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-30
  • 2012-08-04
  • 2012-01-25
  • 1970-01-01
相关资源
最近更新 更多