Ruby динамическая генерация строк .. затем вычисление этой строки - PullRequest
0 голосов
/ 27 мая 2011

Вот настройка:

xml.search возвращает набор узлов (несколько значений), который я перебираю с помощью .each do |l|

langHash = hash with lots of 2 lette language codes 'en', 'fr' etc..

Все, что я хочу сделать, это получить XXXXXXXXXXXX для оценкикак 'Английский', 'Французский'

Но когда я размещаю:

xml.search('Language').each do |l|
  code = "#{l.xpath('LanguageCode')}"      # => 'en', 'fr'  etc..
  language = langHash[code.to_sym]
  raise language.to_s                     # => 'English', 'French'
  this_e=seeker.experiences.build(
    :title        => XXXXXXXXXXXX,
    :of_type      => 'skill'
  )
  this_e.save
  this_e.shards.build(
    :description => "#{l.children.first.attr('description')}: #{l.children.text}; last used: #{l.attr('lastUsed')}",
    :experience_type => 'skill'
  ).save!
end

Значения XXXXXXXXXX Я пробовал:

"#{language}"                   #  =>  interning empty string
"#{l.xpath('LanguageCode')}"    #  =>  interning empty string

Я надеюсь, что объяснил этодолжным образом.

...