添加收货地址实现不了

添加收货地址实现不了

老师:慕课网下载的示例代码,address_list.html页面中如下代码,其中'add'是什么意思?添加收货地址实现不了,能给点思路吗?谢谢!

{% %}


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学,你好。报错信息为在页面渲染的时候出现了问题,添加地址的页面出现了删除地址的操作,反向解析时传入的参数为None,因此会报错。

在删除此地址的地方引入了javascript,js是在当前页面加载后才会加载,但是由于http://img1.sycdn.imooc.com//climg/5f94d8c8099eed4f03720029.jpg直接是在浏览器加载后直接加载。

用户的地址id获取不到返回None因此会报错

http://img1.sycdn.imooc.com//climg/5f94d8f90983564d08540058.jpg

同学可以在执行删除地址前添加if判断语句,若条件成立再执行相应的代码

http://img1.sycdn.imooc.com//climg/5f94d91509c31ced13560267.jpg

好帮手慕燕燕 2020-10-24 14:58:24

同学,你好,

1、'add'是参数,传递给视图函数address_edit(),address_edit()对传入的参数进行判断,如果是数字,则修改地址,不是数字则新增地址

http://img1.sycdn.imooc.com//climg/5f93cb0f094946fa12210148.jpg

http://img1.sycdn.imooc.com//climg/5f93cc7f09d42c0410550455.jpg

2、同学可参考以下思路

(1)设计ORM模型,生成用户地址信息表

(2)配置url地址,可参考

http://img1.sycdn.imooc.com//climg/5f93ce04090b098d09330103.jpg

(3)编写新增地址信息的表单类,并对表单字段进行验证,实现将地址信息保存到数据库中

(4)开发视图函数address_edit(),调用新增地址信息的表单类

加油,祝学习愉快~~~

  • 提问者 富百世 #1
    老师:你上面据说的在慕课网下载的示例程序中已经写好了,运行程序后点击“添加收货地址”后,出现如下错误: NoReverseMatch at /accounts/user/address/edit/add/ Reverse for 'address_delete' with arguments '(None,)' not found. 1 pattern(s) tried: ['accounts/user/address/delete/(?P<pk>\\d+)/$'] 是不是匹配这个 url(r'^user/address/edit/(?P<pk>\S+)/$', views.address_edit, name='address_edit')时,127.0.0.1:8000/accounts/user/address/edit/后面要跟一个数字,而不能是一个add,跟一个add反而会报错,但是在视图函数address_edit()中有对传入的参数进行判断,如果是数字,则修改地址,不是数字即add则新增地址,为什么?求解,谢谢!
    2020-10-24 19:06:42
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
3.从网页搭建入门Python Web
  • 参与学习           人
  • 提交作业       218    份
  • 解答问题       3562    个

本阶段带你用Python开发一个网站,学习主流框架Django+Flask是Python Web开发的第一步,在基础知识上实现积分商城的项目开发,体验真实的项目开发流程,提高解决编程问题和效率的能力。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师