有时候我在使用binding.pry
时陷入了长时间的循环。
我可以通过exit-program
退出循环,但命令也会退出rails console。
有没有简单的方法可以在不退出rails console
的情况下退出长循环?
答案 0 :(得分:5)
我不确定这是您正在寻找的内容,但您可能需要尝试val localArray: Array[Int] = input.map { case Row(_, id: Integer) => id }.collect
val result: Array[DataFrame] = localArray.map {
i => testDf.where(testDf("_1") === i)
}
命令,该命令将自动迭代整个循环而不退出会话。另一个选项(虽然对于长循环不太好)将是使用disable-pry
或 Ctrl + D ,它循环遍历循环的单个循环。你必须反复输入它,直到你的循环完成,但如果这是你的目标,它将允许你击中另一个断点。
要获得更多控制权,您可能需要添加其他宝石,例如byebug或pry-byebug。
答案 1 :(得分:0)
debug = true
# start loop
binding.pry if debug
# end loop
您可以使用exit
单独退出每个循环迭代。然后,当您准备退出调试并继续执行剩余代码时,请输入debug = false
。然后,exit
将返回rails控制台会话。