今日作业:
1.前后的容错机制
2.完善整个登陆并美化系统
3.所有url改为伪静态的方式
4.把系统改为django orm
[1].路由
FBV:
function based view
CBV:
class based view
创建app的两种方式:
-使用pycharm创建
-python3 manage.py startapp app01
动态路由:
-mysite-urls.py
from app01 import views
urlpatterns = [
# url(r'^admin/', admin.site.urls),
url(r'^test/(\w+)', views.test),
]
-app01-views.py
from django.shortcuts import render,HttpResponse
def test(request,cid):
print(cid)
return HttpResponse('ok')
访问地址:http://127.0.0.1:8001/test/1
[2].伪静态
伪静态(一):
-mysite-urls.py
from app01 import views
urlpatterns = [
url(r'^test1/(\w+).html', views.test1),
]
-app01-views.py
def test1(request,cid):
print(cid)
return HttpResponse('ok')
访问地址:http://127.0.0.1:8001/test/1.html
伪静态(二):传递两个参数,关键字参数?P<name>、?P<age>
-mysite-urls.py
from app01 import views
urlpatterns = [
url(r'^test2/(?P<name>\w+)/(?P<age>\w+)/', views.test2),
]
-app01-views.py
def test2(request,age,name):
print(name,age)
return HttpResponse('ok')
访问地址:http://127.0.0.1:8001/test2/frank/18/
[3].路由分发:
-mysite-urls.py
from django.conf.urls import url,include
urlpatterns = [
url(r'app01/',include('app01.urls')),
]
-app01-urls.py
from django.conf.urls import url,include
from app01 import views
urlpatterns = [
url(r'^test3/(\w+).html', views.test3),
]
-app01-views.py
from django.shortcuts import render,HttpResponse
def test3(request,nid):
print(nid)
return HttpResponse('ok')
访问地址:http://127.0.0.1:8001/app01/test3/3.html
反向路由:
-mysite-urls.py
from app01 import views
urlpatterns = [
url(r'^login12/',views.login,name='m1'),
]
-app01-views.py
from django.shortcuts import render,HttpResponse
def login(request):
return render(request,'login.html')
-templates-login.html
<form action="{% url 'm1' %}">
<input type="text">
</form>
[4].模型:
添加'app01'
-mysite-settings.py
INSTALLED_APPS = [
'app01'
]