POST и модели не совпадают - вызывает MultiValueDictKeyError
Вчера я вставил новые поля модели в существующую модель в Django. Вот как это выглядит:
Затем я выполнил эти две команды -
python manage.py makemigrations
python manage.py migrate
В моем views.py я пытаюсь получить из запроса поста все добавленные поля, но это дает мне эту ошибку:
Когда я смотрю в сам POST, я вижу, что ни одно из моих новых полей не было добавлено!
Я понимаю, что поля не существуют в новом request.POST, поэтому ошибка выскакивает в этой части кода:
def updaterecord(request, id):
group_name = request.POST['group']
sale_rent = request.POST['sale_rent']
street = request.POST['street']
city = request.POST['city']
rooms = request.POST['rooms']
size = request.POST['size']
floor = request.POST['floor']
porch = request.POST['porch']
storage = request.POST['storage']
mamad = request.POST['mamad']
elevator = request.POST['elevator']
parking = request.POST['parking']
price= request.POST['price']
phone= request.POST['phone']
date = request.POST['user_date']
Я просто не понимаю, как решить эту проблему, есть ли какие-то обновления или команды, которые мне нужно сделать? Я не помню, как я решил это в прошлый раз или как избежать этого в будущем. Помогите пожалуйста :-)
Дополнительная информация- В sqliteDB есть все поля, так что вот как выглядит мой основной сайт...
Я нашел ошибку! Убедитесь, что в HTML, который вы используете, значение под вводом "name" совпадает с полем, которое вы пытаетесь получить в POST-запросе!!!
Атрибуты тегов html / Вид с жестко закодированными строками / Атрибуты вашей модели всегда должны быть нетронутыми, и это можно рассматривать как сложность с точки зрения обслуживания.
Посмотрите на django model forms, или просто на django forms.