今天,在通過代碼進行瀏覽時,我注意到一些意想不到的情況。此聲明:Ruby 1.9.2 Object.respond_to? :hello && Object.hello給出錯誤,爲什麼?
if Object.respond_to? :你好& & Object.hello #stuff
給出了未定義的方法錯誤。但爲什麼?顯然你好不是一個有效的對象的方法,但考慮到短路評估,不應該Object.hello被忽略每當Object.respond_to? :你好,是假的?
我在使用Authlogic時注意到了這一點,試圖弄清楚爲什麼UserSession類必須定義持久性? in Rails 3.
謝謝
第329行給出了一個NoMethodFound錯誤,除非你定義了一個持久的?行爲。方法在rails 3中的UserSession類中,這是一個常見的已知問題。但代碼如下所示: if object.respond_to?(:persisted?)&& object.persisted? 爲什麼這會失敗呢? – TheTFo 2011-02-23 05:20:55
在Authlogic中是...對不起。 – TheTFo 2011-02-23 05:26:52