关于删除地址功能和添加收货功能的代码问题

关于删除地址功能和添加收货功能的代码问题

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

这上图为添加收货地址时所对应的views

http://img1.sycdn.imooc.com//climg/5dacef8909ed4c7009130199.jpg但如上图的条件,添加收货地址所对应的的url是以 'add' 结尾的,所以addr为None值。


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

js里  "form.instance.id" 的instance不是空值吗? 不太理解。

运行时报错:

django.urls.exceptions.NoReverseMatch: Reverse for 'addr_delete' with arguments '(None,)' not found. 1 pattern(s) tried: ['accounts/addr/del/(?P<pk>\\d+)/$']

[21/Oct/2019 07:42:31] "GET /accounts/addr/edit/add/ HTTP/1.1" 500 155809


正在回答 回答被采纳积分+1

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

1回答
好帮手慕美 2019-10-21 14:58:52

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

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

但是我们注册时新用户没有地址。所以http://img1.sycdn.imooc.com//climg/5dad56a809841d8206170034.jpg

用户的地址id获取不到(form.instance.id),所以返回None。

我们需要对此代码进行一些修改。

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

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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