I defined below model and getting
error : You are trying to add a non-nullable field 'user' to videodata without a default; we can't do that
models.py
JavaScript
x
18
18
1
class User(Model):
2
userID = models.IntegerField()
3
userName = models.CharField(max_length=40)
4
email = models.EmailField()
5
class Meta:
6
ordering = ['userName']
7
verbose_name = 'User MetaData'
8
verbose_name_plural = 'Users MetaData'
9
def __unicode__(self):
10
return str(self.userName)
11
12
class VideoData(Model):
13
video = models.CharField(max_length=40)
14
time = models.IntegerField()
15
user = models.ForeignKey(User, related_name='User')
16
class Meta:
17
verbose_name = 'User_Video MetaData'
18
Where i am doing wrong????
Advertisement
Answer
As the error says, your user field on VideoData is not allowing nulls, so you either need to give it a default user or allow nulls. Easiest way is to allow nulls.
JavaScript
1
2
1
user = models.ForeignKey(User, related_name='User', null=True)
2
or have a default user
JavaScript
1
2
1
user = models.ForeignKey(User, related_name='User', default=<have your default user id here>)
2