首页 > 解决方案 > 如何让我的 cli 应用程序继续使用下一个方法?

问题描述

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

我为每个提示做了新的方法

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

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

标签: rubyactiverecordcommand-line-interface

解决方案


因为在您的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}!"

推荐阅读