Ruby on rails 筛选传入数据

Ruby on rails 筛选传入数据,ruby-on-rails,ruby,api,Ruby On Rails,Ruby,Api,我有一个句子模型,它将在body列中包含一个句子。每行只有一句话很重要。但是,用户可以在表单中输入多个句子。没问题。我真的想鼓励你 所以我需要做的是把句子分开,每行只保存一个句子。我可以很容易地在控制器中完成这项工作(一个简单的.split(“.”)就可以了),但是过了一段时间,这就变得有点不可维护了。我真的觉得模特应该能处理这个问题 所以我在想,在我的句子模型中,在保存hook之前,在那里进行拆分。显然,这也造成了一些问题 有更好的方法吗?我会将其折射到类方法中,例如: 半伪码: class

我有一个句子模型,它将在body列中包含一个句子。每行只有一句话很重要。但是,用户可以在表单中输入多个句子。没问题。我真的想鼓励你

所以我需要做的是把句子分开,每行只保存一个句子。我可以很容易地在控制器中完成这项工作(一个简单的.split(“.”)就可以了),但是过了一段时间,这就变得有点不可维护了。我真的觉得模特应该能处理这个问题

所以我在想,在我的句子模型中,在保存hook之前,在那里进行拆分。显然,这也造成了一些问题


有更好的方法吗?

我会将其折射到类方法中,例如:

半伪码:

class Sentence << ActiveRecord::Base

  def self.split_into_sentences(input)
    input.split(".")
  end

  def self.create_sentences_from_body(body)
    split_into_sentences(body).each{|s| Sentence.create(:body => s)}
  end

end

您确定在
上拆分。
就足够了吗?句子可以以“
”结尾
?'
也是。是的,我将不得不在多个不同的标记上拆分。但我要处理的主要问题是,我应该在哪一层进行拆分。但谢谢你指出这一点。我很感激。
Sentence.create_sentences_from_body(params[:text])