Web开发(四)Django创建应用、视图、url
一、创建应用
使用一个应用开发一个业务模块,此处创建应用名称为booktest(可自定义名称)。执行创建应用代码需要前往manage.py同级目录。
python manage.py startapp booktest
二、安装应用
应用创建成功后,需要安装才可以使用,也就是建立应用和项目之间的关联,在djangotest/settings.py中INSTALLED_APPS下添加应用的名称就可以完成安装。
初始项目的INSTALLED_APPS:
INSTALLED_APPS= [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'booktest',
]
三、视图和 URL 配置
在创建的应用目录下新建一个 views.py 文件,并输入代码:
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello world ! ")
接着,绑定 URL 与视图函数。打开 urls.py 文件,删除原来代码,将以下代码复制粘贴到 urls.py 文件中:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.hello),
]
完成后,启动 Django 开发服务器,并在浏览器访问打开浏览器并访问:
我们也可以在urls.py修改以下规则:
from django.urls import path
from . import views
urlpatterns = [
path('hello/', views.hello),
]
path() 函数
Django path() 可以接收四个参数,分别是两个必选参数:route、view 和两个可选参数:kwargs、name。
path(route, view, kwargs=None, name=None)
route: 字符串,表示 URL 规则,与之匹配的 URL 会执行对应的第二个参数 view。
view: 用于执行与正则表达式匹配的 URL 请求。
kwargs: 视图使用的字典类型的参数。
name: 用来反向获取 URL。
Django2. 0中可以使用 re_path() 方法来兼容 1.x 版本中的url()方法,一些正则表达式的规则也可以通过 re_path() 来实现 。
from django.urls import include, re_path
urlpatterns = [
re_path(r'^index/$', views.index, name='index'),
re_path(r'^bio/(?P<username>\w+)/$', views.bio, name='bio'),
re_path(r'^weblog/', include('blog.urls')),
...
]