Что такое элегантный способ сжать эту петлю? - PullRequest
0 голосов
/ 15 февраля 2012

Я хочу сделать следующее:

 def feed_items
  a = []
  taggings.each do |k| 
    a << k.feed_item 
  end

  return a
 end

Как я могу написать это лучше? Ужасно начинать инициализацию массива, и я чувствую, что есть гораздо более сжатый способ сделать это. Для вашей информации, это для объекта, у которого есть теги has_many, и у каждого тега есть feed_item.

1 Ответ

5 голосов
/ 15 февраля 2012

я не понимаю;ваш цикл ничего не делает, и метод возвращает пустой массив.

Вы пытаетесь это сделать?

def feed_items
  taggings.collect &:feed_item
  # Or taggings.collect { |t| t.feed_item }
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...