Попробуйте напечатать / зарегистрировать содержимое вашего request.POST
объекта - отправляете ли вы данные под именами, под которыми, как вы думаете, вы их отправляете?Ваша форма имеет поля с именами ex.reddy
, name
и add
- но ваше представление ищет переменные POST с именами eno
, ename
и eadd
.
По умолчанию .get
возвращает None
, когда указанный ключ отсутствует в объекте, поэтому, если вы на самом деле не отправляете ключ eno
, тогда request.POST.get('eno')
будетNone
.
Тем не менее, вы получаете IntegrityError
при попытке сохранить нулевое значение в поле с null=True
.Возможно, у вас есть какие-либо непримененные миграции?
Редактировать: при редактировании querydict is not callable
означает, что вы пытаетесь использовать словарь как функцию.request.POST('thing')
не может работать - это должен быть request.POST['thing']
или синтаксис .get, который вы использовали ранее.
Редактировать: применительно к другому редактированию, имена полей HTML-формы теперь все пустые.Вам следует присвоить этим полям формы имена name
s, под которыми вы хотите отправить значения полей.