Django2.0中的urlpattern匹配不輸入任何網址時的寫法


如果使用urlpattern匹配不輸入任何網址時,應該如何寫?

例如:僅匹配http://127.0.0.1:8000/時想要跳轉到某個頁面,這時urlpattern中的url規則應該寫成:

情況1:使用url

  from django.contrib import admin
  from django.urls import path
  from django.conf.urls import url

  urlpatterns = [
  path('admin/', admin.site.urls),
  url(r'',include('CRM.urls')),    # 以前習慣用url(r'^$',view.somedef)
                          # 如果這么寫會報錯:
                          # Your URL pattern '^$' uses include with a route ending with a '$'


  ]

情況2:使用path
  
from django.contrib import admin
  from django.urls import path
  urlpatterns = [
    path('admin/', admin.site.urls),
     path('',include('CRM.urls')),
]

情況3:使用re_path

  from django.contrib import admin
  from django.conf.urls import re_path

  urlpatterns = [
    path('admin/', admin.site.urls),
    re_path(r'',include('CRM.urls')),

  ]

以上情況在python3.4+Django2.0.13環境下測試通過

額外說一下:在跳轉的時候,這樣寫:
  return redirect(request.GET.get('next','/'))
可以保證如果有人亂輸入網址時就會自動跳轉到默認頁面,而避免出現錯誤提示

順便吐槽一下,后台寫博客的編輯環境真特么low逼,用着很別扭。
將就看吧,我實在弄不了它這個格式應該如何調整


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM