搞了很久,最后发现,这是前端问题....😭😭
图1:在notices路径加上<to>传递参数后,浏览器执行该path,在跳转的页面里调用ajax请求,执行url(方框3),请求地址自动加上notices,即图2,导致程序报错,因为他在urls.py里匹配了方框1的path,而方框1的对应的方法里无getNotices对应的情况,因此无返回值。
图3、4是修复后的情况,程序无报错。
百度不到报错的原因,也不知道为啥请求getNotices会加上了notices ,变成Notices/getNotices。
原因:当使用了<to>参数后,页面路径变成了http://127.0.0.1:8000/notices/,导致ajax直接访问“getNotices”时,请求路径为:http://127.0.0.1:8000/notices/getNotices,以至于报错。
解决方法:ajax访问“getNotices”改为“/getNotices”,浏览器请求就会变成http://127.0.0.1:8000/getNotices,访问正确。