Как получить значение по имени столбца в CSV, используя рельсы - PullRequest
0 голосов
/ 05 июля 2018

Я хотел бы получить значение по имени столбца (не по индексу) в рельсах

stopid,stopname,location
1,test1,loc1
2,test2,loc2

CSV.foreach( input_stops, encoding:'iso-8859-1:utf-8' ) do |row|
  p row['stopid']
end

Но это не работает. Есть ли решение? Спасибо

1 Ответ

0 голосов
/ 05 июля 2018

Вам просто нужно включить headers: true для этого:

CSV.foreach(input_stops,
            encoding: 'iso-8859-1:utf-8',
            headers: true) do |row|
  p row['stopid']
end

# Prints:
"1"
"2"
 => nil

Или, если вы хотите использовать заголовки в качестве символов:

CSV.foreach(input_stops,
            encoding: 'iso-8859-1:utf-8',
            headers: true,
            header_converters: :symbol) do |row|
  p row[:stopid]
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...