来自嵌套/非嵌套和validation的rails中多个模型的最佳实践

注意:根据Brian的评论(从如何处理轨道forms的多个模型 )将其作为单独的问题发布

当模型既嵌套又非嵌套时,我正在尝试学习以单轨forms处理多个模型的最佳方法。 对于嵌套的,我发现这两个教程很有帮助

http://weblog.rubyonrails.org/2009/1/26/nested-model-forms http://railsforum.com/viewtopic.php?id=717

我的问题是:

  1. 对于非嵌套模型,如何处理第二个模型的多个条目? 只需运行一个循环,并使用fields_for?
  2. 在嵌套/非嵌套的情况下,当第二个模型有多个条目时,如何validation重复值? 例如,如果project是主要的,task是辅助(子)模型,并且用户为项目添加了多个任务,那么如何确保没有为该特定模型添加重复任务? 一种方法是循环文本值,并检查重复项。 有没有更好的方法,在对象级别,而不是字符串级别?

您可能需要查看此处理多个实例:

http://railscasts.com/episodes/73-complex-forms-part-1

另外,我想我在这里回答了你的第二个问题:

以轨道formsvalidation多个模型

您应该看看Presenter模式,它对我帮助很大!

你可以从这里开始:

http://blog.jayfields.com/2007/03/rails-presenter-pattern.html