视图函数
- 视图函数的第一个参数必须是request,这个参数绝对不能少。
- 视图函数的返回值必须是
django.http.response.HttpResponseBase
的子类的对象。
url传递参数:
url映射:
- 为什么会去urls.py文件中寻找映射呢?
是因为在setting.py
文件中配置了ROOT_URLCONF
为urls.py
所以Django会去urls.py
中去寻找.
- 在
urls.py
中我们所有的映射,都应该放在urlpattenrs
这个变量中.
- 所有的映射不是随便写的,而是使用
path
函数或者re_path
函数进行包装的.
url传参数
- 采用在url中使用变量的方式:在path的第一个参数中,使用
<参数名>
的方式可以传递参数.
然后在视图函数中也要写一参数,视图函数中的参数必须和url中的参数名名称保持一致,不然就找不到这个参数.另外,url中可以传递多个参数.示例代码如下:
urlpatterns = [
path('admin/', admin.site.urls),
path('book/<book_id>/', views.book),
]
def book(request,book_id):
text = '书的id是%s' % book_id
return HttpResponse(text)
- 采用查询字符串的方式:在url中,不需要单独的匹配查询字符串的部分.只需要在视图函数中使用
request.GET.get('参数名称')
的方式来获取.示例代码如下:
def authoer_detail(request):
author_id = request