Django的1.x版本与2.x版本区别与前端的搭建

Django的不同版本最大区别在于urls如下:


1、Django1中的url

from django.conf.urls import url# 使用url关键字urlpatterns = [
url('article-(\\d+).html',views.article),
url('article-(?P<article>\\d+).html',views.article)
]/<article>


Django1的url支持正则匹配:'article-(\\d+).html':使用正则表达式的分组匹配来获取URL中的参数,并以位置参数形式传递给视图article。'article-(?P<article>\\d+).html':使用正则表达式的分组命名匹配来获取URL中的参数,并以关键字参数的形式传递给视图article。
分组命名正则表达式组的语法是:(?P<name>pattern),其中name是组的名称(视图中的关键字参数必须跟组名一致),pattern是正则表达式。
/<name>/<article>

2、Django2中的url

1.Django2特有的url

url规则:

  1. path写的是绝对字符串,请求地址必须与路由地址完全匹配
  2. 使用尖括号 <> 从url中获取参数值
  3. 可以使用转换器指定参数类型,例如: 捕获一个整数参数age,

    若果没有转化器,将匹配任何字符串,也包括路径分隔符 /
  4. path拥有5个转换器:
    str:匹配除路径分隔符 / 外的字符串
    int:匹配自然数
    slug:匹配字母,数字,横杠及下划线组成的字符串
    uuid:匹配uuid形式的数据
    path:匹配任何字符串,包括路径分隔符 /

from django.urls import path
# 使用path关键字urlpatterns = [
path('article-<article>.html',views.article),
]
/<article>

写好前端HTML页面后需要搭建好Django的settings.py写好HTML页面后发现无法加载。问题出在路径找不到,设置好静态HTML页面路径就可以显示了:

Django的1.x版本与2.x版本区别与前端的搭建


随后发现页面无法显示css效果,但是F12查看网页Network显示路径正确,需要配置好本地路径即可:

Django的1.x版本与2.x版本区别与前端的搭建

紧接着设置好urls即可了,(ps:我用的是2.x版本的Django)如下:

Django的1.x版本与2.x版本区别与前端的搭建


分享到:


相關文章: