Ruby 編程中拼寫錯誤的救星:did_you_mean gem
經常我會在Ruby開發中遇到拼寫錯類名或方法名的時候,程序報錯,但我不知道只是拼寫錯誤,我會反復的咕嚕:
“太奇怪了,看起來完全沒問題呀…” |
經常我會在這種事情上浪費大量的時間,而原因可能只是一個字符寫錯了。我痛恨這種事情。
這就是為什么我開發出 did_you_mean gem。使用它,每當你遇到NoMethodError 或 NameError 時,它會自動的尋找出你真正想調用的正確方法,并告訴你。
gem 'did_you_mean', group: [:development, :test]
那么,當年拼寫錯了 ActiveSupport 里的 Hash#with_indifferent_access后,會發生什么事情呢?:
hash.with_inddiferent_access # => NoMethodError: undefined method `with_inddiferent_access' for {}:Hash # # Did you mean? #with_indifferent_access #
看到了吧!現在,你只需要拷貝/粘貼 ‘did_you_mean’ 提示的正確名字,程序就不會有錯了。
did_you_mean gem 會自動的把它推測出的信息顯示在錯誤信息中。也就是說,“Did you mean?” gem 會在任何地方為你服務。下面是一個很典型的例子,是我在一個真實項目中它給出的錯誤提示:
你可以在GitHub的項目主頁中找到更多的例子: yuki24/did_you_mean
趕快使用 did_you_mean gem 吧,不再為拼寫錯誤發愁。Ruby將會讀懂你的思想。