Django学习之项目记录3

1>注册页面的基本错误信息返回已经实现了,接下来就是优化下校验规则,也就是加钩子,

Django学习之项目记录3_第1张图片

如上,当基本规则校验之后,才会再校验这些“额外”的校验规则,需要注意的,局部钩子返回的错误信息仍然在字段名称

对应的值里面,就是那个错误字典:{字段1:[,,,,,,],字段2:[,,,,,,]},而全局钩子返回的错误信息是在字段__all__下面,

也就是,{__all__:[全局钩子错误信息],字段n:[,,,,,,]},所以,模板层接收也要做相应的处理,如下

Django学习之项目记录3_第2张图片

加个判断,若键值为__all__,就固定把错误信息放入 确认密码下面,因为它就是校验密码一致性的。

Django学习之项目记录3_第3张图片

2>文件存储及media设置

Django学习之项目记录3_第4张图片

Django学习之项目记录3_第5张图片

我们看下文件写哪里去了

Django学习之项目记录3_第6张图片

把之前的model拿出来看下,如上,默认是传到项目根路径下面的 avatar/目录下面,若改目录不存在则自动创建,

若没有上传文件,则自动赋值 这个avatar目录下的 default.png文件,

为了让整个项目的目录结构更清晰,我们配置下settings,让它单独为文件“开放一个接口”,就像static目录一样,

我们可以通过url访问static下面的文件,

在项目根目录下创建media目录,然后于settings和url配置如下

Django学习之项目记录3_第7张图片

Django学习之项目记录3_第8张图片

如下, 以后的头像文件就会自动上传到这里,数据库只会保存这个文件对应的地址,记得要把那个defaul.png也放入进去

不然下次没传递头像的用户取默认值的时候就取不到了。

Django学习之项目记录3_第9张图片

Django学习之项目记录3_第10张图片

你可能感兴趣的:(python学习)