“instancemethod”对象有没有属性“__getitem__”
问题描述:
我不断收到此错误:“instancemethod”对象有没有属性“__getitem__”
TypeError: 'instancemethod' object has no attribute '__getitem__'
与我的Django的网站我与玩弄特定视图。我不知道为什么,但我有一种感觉,它可能与我从模型中检索特定对象的方式有关。
该错误发生的位置:
def myview(request):
if request.method == 'POST':
tel = request.POST.get['tel_number']
person = get_object_or_404(Employee,phone_number=tel) # HERE
我有phone_number
一个Employee模型作为CharField
这样:
class Employee(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=30)
phone_number = models.CharField(max_length=10)
的request.POST数据从一个机器人应用程序发送。我想要做的就是检索具有特定phone_number值的Employee对象。
谢谢!
答
问题出在这一行tel = request.POST.get['tel_number']
。如果你正在使用.get
你应该通过密钥作为参数:
tel = request.POST.get('tel_number') # if key is not present by default it will return None
否则,你可以这样做:
tel = request.POST['tel_number'] # raise KeyError Exception if key is not present in dict
嗯,至今没有运气:我用:TEL = request.POST.get ['tel_number'],同样typeError当我发送发布数据时,用'tel_number'键 – bluecat 2013-03-27 18:26:35
请看清楚。我使用'()'括号而不是这个'[]'。所以它应该是'tel = request.POST.get('tel_number')' – 2013-03-27 18:30:58
从头开始,它工作了(我应该更仔细地阅读这些错误,现在是一个新的错误,但我明白了!),谢谢您耐心等待Aamir – bluecat 2013-03-27 19:07:54