新手问题 在 pry 终端里,能修改某些 if 的值吗?

Unknow user · August 22, 2012 · Last by ronbin replied at August 22, 2012 · 1757 hits

用 binding.pry 进行调试,一步步跟踪。为了想看到多个结果,想让其按照自己想的流程来走。这样就是涉及到一些 if 语句的判断。

例如遇到 if signed_in? 我想不管外部环境如何,就是硬性的想为 true,或者 false

又或者 if @identity.user.present?这里,我也想自由的设定 true 或 false

在你代码中插入 if definde? xxx?xxx : 原来的判断 然后在 pry 里给 xxx 赋值

Unknow user #1 August 22, 2012

嘿嘿,谢谢,不过,如果要先在原来的代码上操作的话,好像实用性会稍微降低点哈。

问的时候,也是特希望(没错,是希望,因为不知道能不能实现),能在不动代码的时候,直接在终端里面给指定判断的结果。这样,直接可以在终端里面,可以根据 if 返回不同的值,观察不同的结果。

到底有多少实用性,我个人也不知道,就是想,呵呵

#2 楼 @ronbin if @identity.user.present? 这一种可以啊,xxx = @identity.user然后@identity.user = nil 就是 false,=true 就是 true 之后再把赋值回去。脚本语言就是执行就 OK

Unknow user #3 August 22, 2012

#3 楼 @jjym 嗯,谢谢,这种是可以。第一种,我现在相当于是重新 def 一次这个方法的方式,解决的。

暂时,就先这么处理着。

You need to Sign in before reply, if you don't have an account, please Sign up first.