url命名與反轉url

2021-09-10 06:19:33 字數 3165 閱讀 5447

2. 在cms應用的views.py檔案裡輸入如下**:

return httpresponse('cms首頁')

def login(request):

return httpresponse('cms登入頁面')3. 在front應用的views.py檔案裡輸入如下**:

return httpresponse('前台首頁')

def login(request):

return httpresponse('前台登入頁面')

from django.urls import path,include

urlpatterns = [

path('',include('front.urls')),

path('cms/',include('cms.urls')),

]

5. 在專案的urls.py檔案中更新**如下:

from django.contrib import admin

from django.urls import path,include

urlpatterns = [

path('',include('front.urls')),

path('cms/',include('cms.urls')),

]

6. 實現url反轉

調整front應用views.py裡的**,實現未登陸使用者調轉到登陸頁面的功能。

調整後的**如下:

# 新匯入的函式

def index(request):

user_name = request.get.get('username')

if user_name:

return httpresponse('前台首頁')

else:

return redirect('/login/')

def login(request):

return httpresponse('前台登入頁面')7. url命名

在front應用中urls.py**修改如下:

from django.urls import path

from . import views

urlpatterns = [

path('',views.index,name='index'),

path('login/',views.login,name='login')

# 將url「lognin/」命名為「login」

# 後期如果想將login改為signin,只需要將前面的「login/」修改為「signin/」即可,別的不用動。

]

然後將views.py中的**調整如下:

# 這裡增加了reverse函式

def index(request):

user_name = request.get.get('username')

if user_name:

return httpresponse('前台首頁')

else:

login_url = reverse('login')

# 將login反轉的url賦值給login_url

return redirect(login_url)

def login(request):

return httpresponse('前台登入頁面')7. 應用名空間

from django.urls import path

from . import views

urlpatterns = [

path('',views.index,name=('index')),

path('login/',views.login,name=('login'))

]

front應用中urls.py**更新如下:

from django.urls import path

from . import views

# 應用空間命名為frot

urlpatterns = [

path('',views.index,name='index'),

path('login/',views.login,name='login')

]

front應用的views.py**更新如下:

def index(request):

user_name = request.get.get('username')

if user_name:

return httpresponse('前台首頁')

else:

login_url = reverse('front:login')

# 呼叫front應用裡面的login

return redirect(login_url)

def login(request):

return httpresponse('前台登入頁面')

命名空間和反轉URL詳解

今天新學到乙個知識點 命名空間,反轉url。看了很多網上的博文,大概理解了其中的意思,在此記錄。要提到命名空間是什麼意思,首先要知道反轉url的含義。正常情況下我們是通過客戶端請求的鏈結先到專案下的urls裡去找對應的應用,再去應用下的urls裡找對應的檢視,再去檢視中執行函式返回html頁面。顧名...

url命名與反轉,應用命名空間與例項命名空間

因為url是經常變化的。如果在 中寫死可能會經常改 給url取個名字,以後使用url的時候就使用他的名字進行反轉就可以了,就不需要寫死url了。from django.shortcuts import redirect,reverse redirect 跳轉函式 reverse 反轉函式 在path...

Django命名URL和反向解析URL實現解析

命名 url test.html 測試頁面 測試頁面 json test relbinbohwe external nofollow json 資料 urls.py from django.conf.urls import uwww.cppcns.comrl from app01 import vi...