IntegrityError at /createad/ (1048, "Column 'user_id' cannot be null") в Django [duplicate]

Я делаю сайт перепродажи комиксов на django. Есть модель Ad, которая позволяет создать объявление о продаже. В ней есть внешний ключ user (Django User).

models.py

class Ad(models.Model):
    ad_id = models.AutoField(primary_key=True)
    user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    title = models.CharField(max_length=50, null=False, blank=False)
    description = models.TextField(null=True, blank=True)

forms.py

class AdForm(forms.ModelForm):
    class Meta:
        model = Ad
        fields = ('title', 'description', 'publisher', 'author',
                  'pub_year', 'pub_type', 'price')

views.py

def create_ad(request):
    if request.method == 'POST':
        form = AdForm(request.POST)
        if form.is_valid():
            form.save(commit=False)
            current_user = request.user
            form.user = current_user
            form.save()
    else:
        form = AdForm()
    return render(request, 'create_ad.html', {'form': form})

Когда я пытаюсь сохранить объявление, я получаю следующую ошибку:

IntegrityError at /createad/

(1048, "Column 'user_id' cannot be null")

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