在 Rails 中,您可以使用 .each do || 循环查询返回的结果。但是如果只返回一行呢?或者你有0、1或许多的可能性?您如何处理这些情况而不会引发错误?
这种情况尤其是我在 ryan 的 railcast 博客 ( http://railscasts.com/episodes/196-nested-model-form-part-1 )之后接受嵌套属性的情况
我可以返回 1 个或多个嵌套项,然后我需要循环并编写 XML 表单。
在 Rails 中,您可以使用 .each do || 循环查询返回的结果。但是如果只返回一行呢?或者你有0、1或许多的可能性?您如何处理这些情况而不会引发错误?
这种情况尤其是我在 ryan 的 railcast 博客 ( http://railscasts.com/episodes/196-nested-model-form-part-1 )之后接受嵌套属性的情况
我可以返回 1 个或多个嵌套项,然后我需要循环并编写 XML 表单。
当您使用 循环遍历一组结果时#each
,您无需担心返回了多少结果。如果为零,则数组中不会有任何元素传递给循环;如果有,只有一个。如果更多,则每个都传递给循环。在每种情况下,只要您只是在一个数组上循环,无论数组是否为空,或者它是否有一千个元素,相同的循环代码都将运行而不会出错。
例如,我可以循环遍历具有不同数量元素的数组,而不会出现任何问题:
ree-1.8.7-2010.02 > [].each {|e| puts e }
=> []
ree-1.8.7-2010.02 > [1].each {|e| puts e }
1
=> [1]
ree-1.8.7-2010.02 > [1,2,3].each {|e| puts e }
1
2
3
=> [1, 2, 3]