你好老师,我在另外一个地方碰到这个正则表达式

来源:2-24 正则表达式的应用

慕侠3297407

2021-11-14 04:01:09

url(, serve, {: MEDIA_ROOT}),

最前面的r是什么意思?
media/后面的括号是什么意思?
还有P、<path>等,感觉和课程里面对不上号。。。


写回答

1回答

樱桃小胖子

2021-11-14

同学你好,从同学提供的代码片段中看,完整的代码应该如下列所示:

//MEDIA_URL的作用是用于拼接静态文件的存储路径,简单说就是指定上传文件的相对路径(读取文件)
MEDIA_URL = '/media/'
//这里的media是在和项目同级的目录下创建media 文件夹,用来存储媒体文件,简单说就是指定上传文件的存储目录(存储文件)
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

……

//当前端出现 media/ 这个路径,就引导到MEDIA_ROOT配置的路径路面去寻找
//这段代码传递路径和字典参数给serve,实现了将路径给网页视图的功能
url(r'media/(?P<path>.*)$', serve, {'document_root': settings.MEDIA_ROOT})

①r是request,表示视图 

②?P是关键字传参,用于确定多个传递参数的赋值顺序

③path是路径

④document_root是绝对路径

⑤.*是正则表达式,0或多次,表示任意字符

⑥$表示字符

这个不是前端的知识,是Python中应用django框架设计media路径配置的代码,用于模型类中的图片字段上传图片及保存。

希望可以帮到你,祝学习愉快!

0

0 学习 · 15276 问题

查看课程