Это мои взгляды: я хочу создать пост с автором в разных моделях
def post_create(request):
author, created = Author.objects.get_or_create(name=request.user.username)
form = CreateForm(request.POST or None , request.FILES or None)
if form.is_valid():
form.instance.author = author
form.save()
return redirect('post_list')
context = {
'form': form
}
return render(request,'post/post_create.html',context)
Это мои модели. Я создал автора и пост здесь.
from django.db import models
from django.contrib.auth.models import User
class Post(models.Model):
title = models.CharField(max_length=100)
author = models.ForeignKey('Author',on_delete=models.SET_NULL,null=True)
story= models.TextField()
image= models.ImageField()
slug = models.SlugField()
def __str__(self):
return self.title
class Author(models.Model):
name = models.ForeignKey(User,on_delete=models.CASCADE)
def __str__(self):
return self.name.username