Получение «выбора» для работы в Highline Ruby Gem без ошибок и получение переменных из него - PullRequest
1 голос
/ 23 мая 2010

У меня есть пара проблем с использованием Highline в Ruby, и я пытаюсь заставить работать элемент выбора, подробно описанный здесь .

  1. В настоящий момент следующий код выдает ошибку «ошибка: неверное количество аргументов (0 для 1). Используйте --trace для просмотра обратного следа»
  2. Как получитьпеременная из выбора?На данный момент у меня есть настройка 'do', но я понятия не имею, как получить переменную, выбранную пользователем, в переменную для использования в другом месте.

Извините, если это немногоновичок, я новичок в ruby, и это мой первый проект в глубоком конце.

Заранее спасибо.

if agree("Are these files going to be part of a set? ") 
      set_title = ask("Title: ")
      set_desc = ask("Description:")
      set_genre = ask("Genre: ")
      set_label = ask("Record Label: ")
      set_date = ask_for_date("Release Date (yy-mm-dd): ")
      set_label = ask("EAN/UPC: ")
      set_buy = ask("Buy this set link: ")
      set_tags = ask_for_array("Tags (seperated by space): ")

      # Sort out license
      choose do |menu|
        menu.prompt = "Please choose the license for this set?  "

        menu.choices(:all_rights_reserved, :cc_by) do 
          # put the stuff in a variable
        end
      end
    end # End setup set

1 Ответ

1 голос
/ 23 мая 2010

1) Предоставлено недостаточно информации (см. Мой комментарий)

2) Используйте параметр блока:

menu.choices(:all_rights_reserved, :cc_by) do |chosen|
  puts "Item chosen: #{chosen}"
end

Вы также можете разделить ваш выбор:

menu.choice(:all_rights_reserved) do
  puts "Chosen: All Rights Reserved"
  #...
end

menu.choice(:cc_by) do
  puts "Chosen: CC by"
  #...
end
...