IntegrityError at /admin/news/bank_group_users/add/ (1364, "Field 'user_id_id' doesn't have a default value")
при добавлении записи через админку ошибку IntegrityError at /admin/news/bank_group_users/add/ (1364, "Field 'user_id_id' doesn't have a default value")
Структура такая:
1) Создается таблица с пользователями
2) Таблица имен групп в нее должены быть записаны имена групп которые пользователь создает и потом может в них добавлять других пользователей (отправлять им приглашение как вариант)
3) Таблица "bank_group_users" как раз хранилище пользователей которые состоят в группах,но при добавлении например в группу 1 одного пользователя, все работает хорошо, когда пытаюсь выбрать группу 1 и другого пользователя для добавления - выдает ошибку....
4) А в таблице "Report" основная работа с базой, унаследовал от "user"
Прошу помочь разобраться, это первый проект на Django. Думаю как то неверно прописал связи, хотя в инете пишут что явно надо указывать id при записи auto-increment, проверил через SQL сервер, данное поле уже создано Django с данными параметрами
'''
Структура базы данных
'''
# Таблица Пользователей
class users(models.Model):
name = models.TextField()
email = models.TextField()
password = models.TextField()
def __str__(self):
return ' {} '.format(self.name)
#Таблица имен групп
class Groups (models.Model):
user_id = models.ForeignKey(users, on_delete=models.CASCADE) # Связываем с User id
name_groups = models.TextField()
password = models.TextField()
def __str__(self):
return ' {} : {} '.format(self.name_groups,self.password)
#Таблица списка участников групп и дата их подключения
class bank_group_users(models.Model):
group_id = models.ForeignKey(Groups, on_delete=models.CASCADE) #Связать с таблицей Groups полем id
user_id = models.ManyToManyField(users, verbose_name='name' ) # Связываем с User id
date = models.DateTimeField()
def __str__(self):
return ' {} : {} '.format(self.user_id, self.date)
# Основная таблица операций
class Report(models.Model):
user_id = models.OneToOneField(users, on_delete=models.CASCADE, null=True) # Связать с полем user_id таблицы auth_user;
position_name = models.TextField()
price = models.CharField(max_length=50)
is_up = models.CharField(max_length=100)
date = models.DateTimeField()
def __str__(self):
return '{} : {} : {} : {} : {}'.format(self.user_id,self.position_name,self.price, self.is_up,self.date)