рельсы для обработки одного и нескольких возвращаемых объектов - PullRequest
0 голосов
/ 07 сентября 2010

В рельсах вы можете использовать .each do ||цикл по возвращенным результатам запроса.Но что, если вернется только одна строка?или у вас есть возможность 0, 1 или много?как вы справляетесь с этими сценариями, не выдавая ошибку?

В частности, в этой ситуации я принимаю вложенные атрибуты после блога Райана по железной дороге (http://railscasts.com/episodes/196-nested-model-form-part-1)

У меня может быть 1 или много вложенныхвозвращаемые элементы, которые затем нужно перебрать и написать форму XML.

1 Ответ

1 голос
/ 07 сентября 2010

Когда вы просматриваете набор результатов с помощью #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]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...