Django:我是怎樣僅用瀏覽器(ie,ff)和文字編輯器(ultraedit,notepad++)來調試django程式的

來源:互聯網
上載者:User

django實際上給我們提供了它的調試資訊的,一旦出錯,在debug=true的情況下,會暴露出很多的資訊的.

比如說那個檔案,行號,以及這些函數調用的順序等等,都是可以看到的.
而其代碼還可以摺疊和展開,所以還是很方便的.

斷點的情況,我是這樣來弄的,直接在代碼需要斷點的地方,插入一個簡單行:

debug()

這個函數是沒有定義的全域函數,在python和django中都找不到這個函數,既然這個函數不存在,那麼在代碼正確的時候,你插入這麼一行,它不報錯才怪.
如果你插入這個函數的位置在你的出錯的地方的前面,那麼,你就攔截了你的錯誤了,django提前報debug()不是全域函數的錯誤了,那麼在local vars那個連結處,點擊它就可以看到debug()函數前面的變數的值了.

舉例來說:

if step == 1:    s=form    debug()    return render_to_response('equipment/done.html',                {'form_data': [form.cleaned_data for form in form_list],}    )

上面的代碼如果說你的代碼在render_to_response(...)這裡出錯了,那麼你在它前面插入一行debug(),它就會提前報錯,而且,點擊local vars那裡,你可以看到s=form這一行中變數s的具體值.

總的來說,使用瀏覽器和文字編輯器和上面的插入非法函數有意中斷的方法,可以用來調試django程式,而不需要別的什麼編譯器之類.
希望能夠給你一點啟發和協助.

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.