分组,命名分组,url的命名和反向解析
生活随笔
收集整理的這篇文章主要介紹了
分组,命名分组,url的命名和反向解析
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1.位置分組
1.寫在url里面的:
# 刪除url(r'^del_class/(\d+)',views.del_class),2.寫在html里面的:
<a class="btn btn-danger btn-sm" href="/del_class/{{ i.pk }}/">刪除</a>3.寫在視圖函數(shù)里面的:
def del_class(request,pk):#在request后面寫傳進(jìn)來的參數(shù) 可以設(shè)置默認(rèn)值if not models.ClassTable.objects.filter(pk=pk):return HttpResponse('數(shù)據(jù)不存在')models.ClassTable.objects.get(pk=pk).delete()return redirect('/class_list/')2命名分組:
# 刪除url(r'^del_class/(?P<pk>\d+)',views.del_class),
捕獲的參數(shù)永遠(yuǎn)都是字符串
參數(shù)說明:
- 正則表達(dá)式:一個(gè)正則表達(dá)式字符串
- views視圖:一個(gè)可調(diào)用對象,通常為一個(gè)視圖函數(shù)
- 參數(shù):可選的要傳遞給視圖函數(shù)的默認(rèn)參數(shù)(字典形式)
- 別名:一個(gè)可選的name參數(shù)
注意:
Django 2.0版本中的路由系統(tǒng)是下面的寫法(官方文檔):
from django.urls import path,re_pathurlpatterns = [path('articles/2003/', views.special_case_2003),path('articles/<int:year>/', views.year_archive),path('articles/<int:year>/<int:month>/', views.month_archive),path('articles/<int:year>/<int:month>/<slug:slug>/', views.article_detail), ] View Code3.
把urls.py放到app里面,
項(xiàng)目里的urls? 導(dǎo)入app里面的urls.py
from django.conf.urls import url,include#印可肉的 from django.contrib import admin from app01 import views urlpatterns = [url(r'^admin/', admin.site.urls),url(r'app01/',include('app01.urls')) ] 多個(gè)app上面可以額外的寫前綴4.
給url起別名:
1.普通url
# 刪除url(r'^del_class/(?P<pk>\d+)',views.del_class,name='bieming' ),通過url的名字反向解析拿出rul的東西
2.使用
在視圖函數(shù)里引入模塊? ? 用reverse? ? 拿出來的是字符串類型的
from django.urls import reverse reverse('別名') #模板中使用:? 如果有命名分組的話,要給命名分組傳值
<a class="btn btn-danger btn-sm" href="{% url 'bieming' i.pk %}">刪除</a>
url(r'app01/',include('app01.urls',namespace='app01')), url(r'app02/',include('app02.urls',namespace='app02'))
app里面的
url(r'^home/$', views.home, name='home'), # app01
視圖:
? reverse(’app01:home‘) ——》 /app01/home/
? reverse(’app02:home‘) ——》 /app02/home/
模板:
? {% url 'app01:home' %} —》 /app01/home/
轉(zhuǎn)載于:https://www.cnblogs.com/xihuanniya/p/10071728.html
總結(jié)
以上是生活随笔為你收集整理的分组,命名分组,url的命名和反向解析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: firewalld的防火墙
- 下一篇: 2018-12-6