urls模块- include函数的用法

urls模块化:

若是项目变得愈来愈大。那么url会变得愈来愈多。若是都放在主urls.py文件中,那么将不太好管理。所以咱们能够将每一个app本身的urls放到本身的app中进行管理。通常咱们会在app中新建一个urls.py文件用来存储全部和这个app相关的子url。
须要注意的地方:python

  1. 应该使用include函数包含子urls.py,而且这个urls.py的路径是相对于项目的路径。示例代码以下:
    python urlpatterns = [ path('admin/', admin.site.urls), path('book',include('book.urls')) ]
  2. appurls.py中,全部的url匹配也要放在一个叫作urlpatterns的变量中,不然找不到。
  3. url是会根据主urls.py和app中的urls.py进行拼接的,所以注意不要多加斜杠。

include函数的用法:

  1. include(module,namespace=None):
    • module:子url的模块字符串。
    • namespace:实例命名空间。这个地方须要注意一点。若是指定实例命名空间,那么前提必需要先指定应用命名空间。也就是在子urls.py中添加app_name变量。
  2. include((pattern_list, app_namespace), namespace=None):include函数的第一个参数既能够为一个字符串,也能够为一个元组,若是是元组,那么元组的第一个参数是子urls.py模块的字符串,元组的第二个参数是应用命名空间。也就是说,应用命名空间既能够在子urls.py中经过app_name指定,也能够在include函数中指定。
  3. include(pattern_list):pattern_list是一个列表。这个列表中装的是path或者re_path函数。实例代码以下:
    pyhon path('movie/',include([ path('',views.movie), path('list/',views.movie_list), ]))
相关文章
相关标签/搜索