如何在Rails中从单个文本字段创建多个记录?

时间:2014-06-22 18:12:21

标签: ruby-on-rails-4

我正在尝试使用一个名为 text 的表单字段,允许用户将每个段落保存在自己的记录中。这对Rails来说甚至可能吗?

详细

用户点击新操作,并填写字段:

<%= f.text_area :text %>

他们输入几行到:text text_area:

Line 1 of text.
Line 2 of text.

Line 3 of text.

提交表单后,如何将创建操作中的这些行分隔为两个不同的记录(第一个包含第1行第2行< / em>,第二个包含第3行)?我知道我必须根据新行进行拆分(拆分(/ \ n \ n /)),但我不知道何时这样做,或者如何编码创建操作以促进整个过程......

谢谢, --mark

1 个答案:

答案 0 :(得分:0)

所以这就是(迫切需要重构)答案:

@post = Post.new(post_params)
@posts_collection = @post.text.to_s.split(/\r\n\r\n/)

@posts_collection.each do |post|
  @post = Post.new(post_params)
  @post.save
end

基本上 - 将文本字段拆分为数组,然后将集合中的每个项目保存为新记录。