Объект '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
У меня есть модель Employee с phone_number
как 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 отправляются из приложения Android. Все, что я хочу сделать, это получить объект Employee с определенным значением номер_собрания.
Спасибо!
Ответы
Ответ 1
Проблема в этой строке 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