<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          推薦 2 款必備的 Django 開(kāi)發(fā)神器

          共 4681字,需瀏覽 10分鐘

           ·

          2021-03-24 12:28




          點(diǎn)擊上方“AirPython”,選擇“加為星標(biāo)

          第一時(shí)間關(guān)注 Python 原創(chuàng)干貨!


          1. 前言

          大家好,我是安果!

          使用 Django 進(jìn)行 Web 開(kāi)發(fā)的時(shí)候,為了提高開(kāi)發(fā)效率,少不了安裝一些第三方應(yīng)用 App

          本篇文章將推薦 2 款非常好用的應(yīng)用 App

          • django_extensions

          • debug_toolbar

          2. django_extensions

          django_extensions,是一個(gè)為 Django 項(xiàng)目收集全局自定義管理擴(kuò)展的存儲(chǔ)庫(kù)

          首先,在目標(biāo)虛擬環(huán)境下安裝依賴

          # 安裝依賴
          pip3 install django-extensions

          然后,在項(xiàng)目的配置文件 settings.py 中添加 App

          # settings.py

          # 調(diào)試模式
          DEBUG = True

          # 新增App:django_extensions
          INSTALLED_APPS =(
              ...
              'django_extensions',
              ...

          接下來(lái)就可以使用它進(jìn)行項(xiàng)目調(diào)試了

          常見(jiàn)的功能如下:

          2-1  增強(qiáng)版 Shell

          我們都知道,原始項(xiàng)目都是使用「 ./manage.py  shell 」命令進(jìn)入到調(diào)試模式,涉及到模型 Model 操作都需要手動(dòng)導(dǎo)入

          然而,添加 django_extensions 應(yīng)用后,直接使用「 ./manage.py  shell_plus 」命令就可以進(jìn)入到增強(qiáng)版的 Shell,自動(dòng)導(dǎo)入項(xiàng)目下所有模型,非常方便我們調(diào)試

          2-2  檢查模板錯(cuò)誤

          使用「 ./manage.py validate_templates 」命令可以檢測(cè)模板中的錯(cuò)誤

          # 檢查模板錯(cuò)誤
          (django) localhost:xh_tools xingag$ ./manage.py validate_templates
          0 errors found

          2-3 查看路由列表

          使用「 ./manage.py show_urls 」命令可以查看項(xiàng)目所有的路由及視圖函數(shù)對(duì)應(yīng)關(guān)系表

          更多功能可以參考:

          https://github.com/django-extensions/django-extensions

          3. django_toolbar

          django_toolbar,是一款 Django 開(kāi)發(fā)利器,在 Debug 模式下,能實(shí)時(shí)展示項(xiàng)目的整體信息、請(qǐng)求響應(yīng)、SQL、緩存等內(nèi)容

          首先,在虛擬環(huán)境下安裝依賴包

          # 安裝依賴包
          pip3 install django-debug-toolbar

          然后,在項(xiàng)目配置文件 settings.py 中,對(duì) django_toolbar 進(jìn)行配置

          3-1  添加應(yīng)用

          # settings.py

          # 調(diào)試模式
          DEBUG = True

          # 新增App:django_extensions
          INSTALLED_APPS =(
              ...
              'debug_toolbar',
              ...

          3-2  啟用 django_toolbar 中間件

          在 MIDDLEWARE 列表中,盡早的啟動(dòng) django_toolbar 中間件

          注意:中間件的位置很重要,djano_toolbar 中間件必須位于對(duì)響應(yīng)內(nèi)容進(jìn)行編碼的任何其他中間件之后

          # settings.py

          MIDDLEWARE = [
              'debug_toolbar.middleware.DebugToolbarMiddleware',
              'django.middleware.security.SecurityMiddleware',
              'django.contrib.sessions.middleware.SessionMiddleware',
              'django.middleware.locale.LocaleMiddleware',
              'django.middleware.common.CommonMiddleware',
              'django.middleware.csrf.CsrfViewMiddleware',
              'django.contrib.auth.middleware.AuthenticationMiddleware',
              'django.contrib.messages.middleware.MessageMiddleware',
              'django.middleware.clickjacking.XFrameOptionsMiddleware',
          ]

          參考:

          https://docs.djangoproject.com/en/dev/ref/middleware/#django.middleware.gzip.GZipMiddleware

          3-3  配置內(nèi)部 IP

          必須要在配置文件 settings.py 設(shè)置 INTERNAL_IPS 的值為本地 IP,才會(huì)在網(wǎng)頁(yè)上展示調(diào)試工具欄

          # settings.py

          INTERNAL_IPS = [
              '127.0.0.1',
              'localhost'
          ]

          3-4  配置顯示內(nèi)容( 可選 )

          默認(rèn)工具欄展示所有內(nèi)容,也可以定義 DEBUG_TOOLBAR_PANELS 列表的值,指定顯示部分內(nèi)容

          比如:僅配置加載時(shí)間、請(qǐng)求頭和響應(yīng)頭、請(qǐng)求信息、SQL 語(yǔ)句、緩存、日志信息

          # settings.py

          DEBUG_TOOLBAR_PANELS = [
              'debug_toolbar.panels.timer.TimerPanel',
              'debug_toolbar.panels.headers.HeadersPanel',
              'debug_toolbar.panels.request.RequestPanel',
              'debug_toolbar.panels.sql.SQLPanel',
              'debug_toolbar.panels.cache.CachePanel',
              'debug_toolbar.panels.logging.LoggingPanel',
          ]

          最后,在項(xiàng)目下的 urls.py 文件內(nèi)配置調(diào)試工具欄的 URL

          # 項(xiàng)目下的urls.py

          # 配置調(diào)試工具欄的URL
          urlpatterns = [
              path('', include('index.urls')),
              path('admin/', admin.site.urls),

              # 設(shè)置項(xiàng)目上線的靜態(tài)資源路徑
              url('^static/(?P<path>.*)$', static.serve,
                  {'document_root': settings.STATIC_ROOT}, name='static')
          ]

          # 如果是調(diào)式狀態(tài)
          if settings.DEBUG:
              import debug_toolbar

              urlpatterns = [
                                path('__debug__/', include(debug_toolbar.urls)),
                            ] + urlpatterns

          以調(diào)試模式運(yùn)行項(xiàng)目后,就可以在網(wǎng)頁(yè)上看到工具欄的實(shí)時(shí)信息了

          更多功能可以參考:

          https://github.com/jazzband/django-debug-toolbar

          4. 最后

          文中推薦了兩款非常實(shí)用的 Django 開(kāi)發(fā)輔助應(yīng)用,它可以幫助我們對(duì)項(xiàng)目進(jìn)行調(diào)試,快速定位問(wèn)題

          如果你覺(jué)得文章還不錯(cuò),請(qǐng)大家 點(diǎn)贊、分享、留言 下,因?yàn)檫@將是我持續(xù)輸出更多優(yōu)質(zhì)文章的最強(qiáng)動(dòng)力!


          留言送書

          本周贈(zèng)書:《Django開(kāi)發(fā)入門與項(xiàng)目實(shí)戰(zhàn)
          介紹:本書重點(diǎn)闡述了Python Web開(kāi)發(fā)框架Django在企業(yè)開(kāi)發(fā)中的應(yīng)用,從Web基礎(chǔ)知識(shí)的鋪墊,到Django框架的基本使用,以及與Web相關(guān)的各種功能組件的使用,都進(jìn)行了全面的講解,再配合項(xiàng)目實(shí)戰(zhàn),讓讀者全面學(xué)習(xí)并掌握Django框架各個(gè)方面的細(xì)節(jié)操作,并能在第一時(shí)間上手企業(yè)項(xiàng)目開(kāi)發(fā)



          PS:中獎(jiǎng)名單將在交流群公布,可以掃描上面二維碼,備注【交流群】,加入技術(shù)交流群!



          ??分享、點(diǎn)贊、在看,給個(gè)三連擊唄!
          瀏覽 69
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产乱妇无码毛片A片在线看下载 | 国产精品日韩在线 | 精品九九九| 亚洲高清无码毛片 | 免费黄色色情成人影片 |