У меня есть эта модель в моем Django приложении:
class ClubSession(models.Model):
location = models.CharField(max_length=200)
coach = models.ForeignKey('auth.User', on_delete=models.CASCADE)
date = models.DateTimeField(default=now)
details = models.TextField()
def __str__(self):
return self.location
Это представление реализует его:
class SessionListView(ListView):
model = ClubSession
template_name = 'club_sessions.html'
context_object_name = 'all_club_sessions_list'
Я пытаюсь протестировать представление. В моем тестовом классе есть setUp
, который создает запись:
def setUp(self):
ClubSession.objects.create(location='test location',
coach=User(id=1),
date='2020-06-01 18:30',
details='this is another test')
Когда я запускаю свой тест, я получаю эту ошибку:
IntegrityError: The row in table 'club_sessions_clubsession' with primary key '1' has an invalid foreign key: club_sessions_clubsession.coach_id contains a value '1' that does not have a corresponding value in auth_user.id.
Пользователь с идентификатором 1 существует, так как Я заставлю это работать? Я пробовал добавить имя пользователя, но это тоже не сработало.