【问题标题】:how do I get a my cli app to move on to the next method?如何让我的 cli 应用程序继续使用下一个方法?
【发布时间】:2019-03-27 15:20:19
【问题描述】:

(使用 tty-prompt)我尝试制作单独的方法,以便我的应用程序可以顺利运行,但是我只设法破坏我的代码或将其设置为无限提示。我一直试图设置 activerecord增删改查

我为每个提示创建了新方法

def greet
  $prompt = TTY::Prompt.new
  system "clear"

  puts 'Welcome to gig_finder, the best resource for finding your next gig!'
end

def user
  name = $prompt.ask('What is your name?', default: "artist_name")
  system "clear"
  puts "Welcome #{user}!"
end

输出将继续询问名称,直到您强制退出

【问题讨论】:

  • 能否包含调用这些方法的代码?
  • 是的,方法是在需要环境的run.rb文件中调用的(调用:greet,然后是用户等),环境需要lib目录中的所有文件
  • 你能显示run.rb吗?
  • endP = true greet user while endP venue_selection endP = book end
  • 请将您的 run.rb 代码放在问题本身中,拜托。您的问题应该是独立的,并包括其他人重现您的问题所需的一切。

标签: ruby activerecord command-line-interface


【解决方案1】:

因为在您的user 方法中,您再次调用了user 方法。

def user   # <--- user
  name = $prompt.ask('What is your name?', default: "artist_name")
  system "clear"
  puts "Welcome #{user}!"  # <--- calls user
end

这会导致无限循环。

您可能打算使用:

  puts "Welcome #{name}!"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-10
    • 1970-01-01
    • 2013-01-15
    • 2016-10-05
    • 2014-10-07
    • 2017-10-22
    • 2019-09-05
    相关资源
    最近更新 更多