在使用pycharm的Python语言django框架下建设网页时,使用了ajax方法,写在js文件里,但是每次运行时都回复 500错误,多方查找之后有如下几种解决方法:
1.type:‘POST’ 改为 method:‘POST’ (本菜的解决方法,但还是出错)
2.添加头文件(不理解什么意思,暂时记下,以后实验)
3.本菜后来又进行了一步修改return render(request, 'pos/cart.html', {'items' : items})
4.使用新版本的jQuery(教练指出本菜的错误之一在于此)
在本菜引用了新版本的jQuery之后仍然报500错误,搜索后确定引发此错误的两种可能一种是服务器本身权限问题,另一种是程序上不规范或者错误造成,而对本菜目前的情况看来只可能是程序上的不规范造成的,于是尝试以下解决方法:
1.from django.http import HttpResponse
再在相应的函数内添加return HttpResponse( something name )
很明显失败了。
2.最后发现只有删去新的定义类的那一条语句才终于不报错了,就是这条:
additem = AddItem.objects.create(name=item[0].name, type=item[0].type, print=item[0].print, unit=item[0].unit),但是这条语句不能删
3.最终,发现错误之处在于,模板中AddItem类的另外两个属性并没有在上面那条语句中进行设定值,在删除这两条属性之后,此语句存在的情况下,500错误也烟消云散了
总体而言,500错误出现的原因在于传值的格式一类的问题,本菜这次错误可能来子的地方只有js文件和views文件两处,在确定其中之一没问题的情况下查找另一个的传值问题也就能解决500错误了。
'tuple' object has no attribute 'get',本菜遇到启动网页时,网页上报这个错误,查找之后发现只需要把views文件中return语句最后的标点符号删除就好了