IntegrityError null value in column "home_id" of relation "WebApp_shorttermrental" violates not-null constraint for one Django model, not the other

У меня есть две модели с одним и тем же полем. Когда я пытаюсь добавить новый экземпляр в базу данных, одна из них выдает ошибку, указанную в заголовке, а другая - нет.

models.py

class Housesit(BaseModel):
    user = models.ForeignKey(CustomUser, on_delete=models.DO_NOTHING)
    home = models.ForeignKey(Home, on_delete=models.DO_NOTHING)
    title = models.CharField(max_length=256)
    <more fields>

    def __str__(self):
        return self.title

class ShortTermRental(BaseModel):
    user = models.ForeignKey(CustomUser, on_delete=models.DO_NOTHING)
    home = models.ForeignKey(Home, on_delete=models.DO_NOTHING)
    title = models.CharField(max_length=256)
    <more fields>

views.py

def add_housesit(request):
    active_user = request.user
    if not active_user.is_authenticated:
        return warn_redirect_login(request)

    new_housesit = Housesit.objects.create(user=active_user)
    return redirect("update_housesit", pk=new_housesit.id)

def add_short_term_rental(request):
    active_user = request.user
    if not active_user.is_authenticated:
        return warn_redirect_login(request)

    new_short_term_rental = ShortTermRental.objects.create(user=active_user)
    return redirect("update_short_term_rental", pk=new_short_term_rental.id)

urls.py

urlpatterns =
    [
    path("housesit/add/", views.add_housesit, name="add_housesit"),
    path(
        "short_term_rental/add/",
        views.add_short_term_rental,
        name="add_short_term_rental",
    ),
    ]

Я не могу понять, чем они отличаются друг от друга и почему один выдает ошибку, а другой нет. Я полностью мигрировал. Где еще может быть источник несоответствия? Простым решением было бы просто добавить "null=True" в поле Home, но я пытаюсь понять, почему оно не работает. Любой совет буду очень признателен!

Вернуться на верх