1

Ruby で Highline を使用していくつかの問題を抱えており、ここで説明されている選択要素を機能させようとしています。

  1. 現時点では、次のコードで「エラー: 引数の数が間違っています (1 の場合は 0)。バックトレースを表示するには --trace を使用してください」というエラーが生成されます。
  2. 変数を選択しないようにするにはどうすればよいですか? 現時点では 'do' セットアップを行っていますが、ユーザーが選択した変数を別の場所で使用するために変数に入れる方法がわかりません。

これが少し初心者の場合は申し訳ありませんが、私はルビーが初めてで、これが私の最初のプロジェクトであり、深いところにあります。

前もって感謝します。

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
4

1 に答える 1

1

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
于 2010-05-23T15:04:19.390 に答える