Category.all
возвращает массив всех объектов Category, который является всем, что содержит таблица категорий.кошки, следовательно, массив всех категорий.Я не уверен, почему ты думаешь, что перебираешь «один» из всего.Чтобы получить один результат, вы можете использовать find()
или first
:
cat = Category.first
puts cat.name
Если вам нужны все имена, вы можете сделать это:
Category.all.map(&:name)
или, немногоболее эффективно, особенно если есть много полей:
Category.all(:select => :name).map(&:name)