2012-10-16 54 views
-1

我很難在「Ruby on Rails」上調試代碼流。請給我一些提示。我是「Ruby on Rails」的新手。就像在php中,我們使用var_dump,print_r and die,只是爲了檢查數據到達的地方。在Rails代碼流中調試ruby的技巧

+1

提示:通過[on Rails的教程書紅寶石]免費提供的前幾章(HTTP訪問://紅寶石.railstutorial.org/ruby​​-on-rails-tutorial-book),以更好地理解Rails的工作方式,以及在使用Ruby on Rails時各種工具和技巧。花在它上面的時間將幫助你大量地自己計算出這些類型的東西。 –

+0

@PrakashMurthy謝謝,我會嘗試。 –

回答

3

可比招數在Ruby中:

輸出一些東西到服務器日誌(log/development.log默認情況下)。 我通常會在開發時保持一個終端窗口看着日誌。 (tail -f /log/development.log

您可以使用putslogger.info打印的東西到日誌中,但我個人喜歡this gem, lll,它記錄了很好的強調無論你通過它的版本。

要停止執行,可以使用abortraise。例如:

raise "something terrible happened." 

當你這樣做在開發模式,與任何其他異常,Rails的渲染頁面,上面有一堆得心應手的東西 - 對異常,堆棧跟蹤和參數的當前狀態,會話和環境變量。

+0

感謝您的幫助。 –

3

這是一個有點晚,但供大家參考了print_r的使用以下命令:

中止Object.methods.inspect

中止是死的等價物。 「方法」方法將列出與對象關聯的所有方法。如果你有一個數組,並希望輸出數組簡單地做:

中止Array.inspect

+0

感謝您的回覆。 –

+0

沒問題,希望有所幫助。 – srcnix